setCookies
Устанавливает один или несколько cookies для текущей страницы. Убедитесь, что вы находитесь на странице, которая должна получить cookie. Вы не можете установить cookie для произвольной страницы, не находясь на этой странице.
Использование
browser.setCookies({ name, value, path, domain, secure, httpOnly, expiry, sameSite })
Параметры
Имя | Тип | Детали |
---|---|---|
cookie | Array<WebDriverCookie>, WebDriverCookie | объект cookie или массив объектов. |
cookie.name необязательно | String | Имя cookie. |
cookie.value необязательно | String | Значение cookie. |
cookie.path необязательно | String | Путь cookie. По умолчанию "/" если опущено при добавлении cookie. |
cookie.domain необязательно | String | Домен, для которого видим cookie. По умолчанию используется домен URL активного документа текущего контекста просмотра, если опущено при добавлении cookie. |
cookie.secure необязательно | Boolean | Является ли cookie безопасным. По умолчанию false, если опущено при добавлении cookie. |
cookie.httpOnly необязательно | Boolean | Является ли cookie доступным только через HTTP. По умолчанию false, если опущено при добавлении cookie. |
cookie.expiry необязательно | Number | Когда срок действия cookie истекает, указано в секундах с начала эпохи Unix. Не должно устанавливаться, если опущено при добавлении cookie. |
cookie.sameSite необязательно | String | Применяется ли к cookie политика SameSite. По умолчанию None, если опущено при добавлении cookie. Может быть установлено в "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'}
// ]
});