cookies([urls])
Open source
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
JavaScript
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();
}
}
Was this page helpful?
Related resources from Grafana Labs
Additional helpful documentation, links, and articles:

Intro to metrics with Grafana: Prometheus, Grafana Mimir, Graphite, and beyond
In this webinar, we’ll go over challenges when scaling metrics systems, with a particular focus on Prometheus and Grafana Mimir.

Scaling and securing your Prometheus metrics in Grafana
In this webinar, we’ll go over Grafana Enterprise Metrics (GEM), a simple and scalable Prometheus service that is seamless to use, and simple to maintain

Grafana Cloud Adaptive Metrics: Reduce Prometheus high cardinality metrics
We’ll show you how Grafana Cloud tackles the problem of unmanageable metrics growth with Adaptive Metric and how to eliminate unused and partially used time series through customized aggregation.