تعيين ملفات تعريف الارتباط
يقوم بتعيين واحد أو أكثر من ملفات تعريف الارتباط للصفحة الحالية. تأكد من أنك على الصفحة التي يجب أن تتلقى ملف تعريف الارتباط. لا يمكنك تعيين ملف تعريف ارتباط لصفحة عشوائية دون التواجد على تلك الصفحة.
الاستخدام
browser.setCookies({ name, value, path, domain, secure, httpOnly, expiry, sameSite })
المعاملات
الاسم | النوع | التفاصيل |
---|---|---|
cookie | Array<WebDriverCookie>, WebDriverCookie | كائن ملف تعريف الارتباط أو مصفوفة من الكائنات. |
cookie.name اختياري | String | اسم ملف تعريف الارتباط. |
cookie.value اختياري | String | قيمة ملف تعريف الارتباط. |
cookie.path اختياري | String | مسار ملف تعريف الارتباط. يكون افتراضيًا "/" إذا تم حذفه عند إضافة ملف تعريف ارتباط. |
cookie.domain اختياري | String | المجال الذي يظهر فيه ملف تعريف الارتباط. يكون افتراضيًا نطاق URL للمستند النشط في سياق التصفح الحالي إذا تم حذفه عند إضافة ملف تعريف ارتباط. |
cookie.secure اختياري | Boolean | ما إذا كان ملف تعريف الارتباط آمنًا. يكون افتراضيًا خطأ (false) إذا تم حذفه عند إضافة ملف تعريف ارتباط. |
cookie.httpOnly اختياري | Boolean | ما إذا كان ملف تعريف الارتباط خاصًا بـ HTTP فقط. يكون افتراضيًا خطأ (false) إذا تم حذفه عند إضافة ملف تعريف ارتباط. |
cookie.expiry اختياري | Number | متى ينتهي صلاحية ملف تعريف الارتباط، يتم تحديده بالثواني منذ Unix Epoch. يجب عدم تعيينه إذا تم حذفه عند إضافة ملف تعريف ارتباط. |
cookie.sameSite اختياري | String | ما إذا كان ملف تعريف الارتباط ينطبق على سياسة SameSite. يكون افتراضيًا "None" إذا تم ح ذفه عند إضافة ملف تعريف ارتباط. يمكن تعيينه على "Lax" أو "Strict". |
مثال
setCookies.js
it('should set a cookie for the page', async () => {
await browser.url('/')
// set a single cookie
await browser.setCookies({
name: 'test1',
value: 'one'
// The below options are optional
// path: '/foo', // The cookie path. Defaults to "/"
// domain: '.example.com', // The domain the cookie is visible to. Defaults to the current browsing context's active document's URL domain
// secure: true, // Whether the cookie is a secure cookie. Defaults to false
// httpOnly: true, // Whether the cookie is an HTTP only cookie. Defaults to false
// expiry: 1551393875 // When the cookie expires, specified in seconds since Unix Epoch
})
// set multiple cookies
await browser.setCookies([
{name: 'test2', value: 'two'},
{name: 'test3', value: 'three'}
])
const cookies = await browser.getCookies()
console.log(cookies);
// outputs:
// [
// {name: 'test1', value: 'one', domain: 'www.example.com'},
// {name: 'test2', value: 'two', domain: 'www.example.com'},
// {name: 'test3', value: 'three', domain: 'www.example.com'}
// ]
});