Menu
Open source
cookies([urls])
Returns a list of cookies from the BrowserContext 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 BrowserContext. |
Returns
Type | Description |
---|---|
array | A list of cookies. |
Note
Cookies can be added with BrowserContext.addCookies.
Example
JavaScript
import { browser } from 'k6/experimental/browser';
export const options = {
scenarios: {
ui: {
executor: 'shared-iterations',
options: {
browser: {
type: 'chromium',
},
},
},
},
};
export default async function () {
const context = browser.newContext();
const page = context.newPage();
try {
// get cookies from the browser context
let cookies = context.cookies();
console.log('initial cookies length:', cookies.length); // prints 0
// let's add more cookies to filter by urls
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 = context.cookies();
console.log('filtered cookies length:', cookies.length); // prints 3
// get cookies filtered by urls
cookies = 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 {
page.close();
}
}
Was this page helpful?
Related documentation
Related resources from Grafana Labs
Additional helpful documentation, links, and articles:
Video
Performance testing and observability in Grafana Cloud
In this webinar, learn how Grafana Cloud k6 offers you the best developer experience for performance testing.
User-centered observability: load testing, real user monitoring, and synthetics
Learn how to use load testing, synthetic monitoring, and real user monitoring (RUM) to understand end users' experience of your apps. Watch on demand.