Important: This documentation is about an older version. It's relevant only to the release noted, many of the features and functions have been updated or replaced. Please view the current version.
cookies([urls])
Returns a list of
cookies from the
browser context filtered by the provided urls
. If no urls
are provided, all cookies are returned.
Parameter | Type | Description |
---|---|---|
urls | array | A string array of URLs to filter the cookies in the browser context. |
Returns
Type | Description |
---|---|
Promise<Array<Cookie>> | A Promise that fulfills with an array of cookies. |
Note
Cookies can be added with BrowserContext.addCookies.
Example
import { browser } from 'k6/browser';
export const options = {
scenarios: {
ui: {
executor: 'shared-iterations',
options: {
browser: {
type: 'chromium',
},
},
},
},
};
export default async function () {
const context = await browser.newContext();
const page = await context.newPage();
try {
// get cookies from the browser context
let cookies = await context.cookies();
console.log('initial cookies length:', cookies.length); // prints 0
// let's add more cookies to filter by urls
await context.addCookies([
{ name: 'foo', value: 'foovalue', sameSite: 'Strict', url: 'http://foo.com' },
{ name: 'bar', value: 'barvalue', sameSite: 'Lax', url: 'https://bar.com' },
{ name: 'baz', value: 'bazvalue', sameSite: 'Lax', url: 'https://baz.com' },
]);
// get all cookies
cookies = await context.cookies();
console.log('filtered cookies length:', cookies.length); // prints 3
// get cookies filtered by urls
cookies = await context.cookies('http://foo.com', 'https://baz.com');
console.log('filtered cookies length:', cookies.length); // prints 2
// the first filtered cookie
console.log("1st cookie's name :", cookies[0].name); // prints foo
console.log("1st cookie's value:", cookies[0].value); // prints foovalue
// the first filtered cookie
console.log("2nd cookie's name :", cookies[1].name); // prints baz
console.log("2nd cookie's value:", cookies[1].value); // prints bazvalue
} finally {
await page.close();
}
}