CookieStoreManager

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

Note: This feature is available in Service Workers.

The CookieStoreManager interface of the Cookie Store API allows service workers to subscribe to cookie change events. Call subscribe() on a particular service worker registration to receive change events.

A CookieStoreManager has an associated ServiceWorkerRegistration. Each service worker registration has a cookie change subscription list, which is a list of cookie change subscriptions each containing a name and URL. The methods in this interface allow the service worker to add and remove subscriptions from this list, and to get a list of all subscriptions.

To get a CookieStoreManager, call ServiceWorkerRegistration.cookies.

Instance methods

CookieStoreManager.getSubscriptions()

Returns a Promise which resolves to a list of the cookie change subscriptions for this service worker registration.

CookieStoreManager.subscribe()

Subscribes to changes to cookies. It returns a Promise which resolves when the subscription is successful.

CookieStoreManager.unsubscribe()

Unsubscribes the registered service worker from changes to cookies. It returns a Promise which resolves when the operation is successful.

Examples

In this example, the ServiceWorkerRegistration represented by registration is subscribing to change events on the cookie named "cookie1" with a scope of "/path1".

js
const subscriptions = [{ name: "cookie1", url: `/path1` }];
await registration.cookies.subscribe(subscriptions);

If the ServiceWorkerRegistration has subscribed to any cookies, then getSubscriptions() will return a list of cookies represented by objects in the same format as used for the original subscription.

js
const subscriptions = await self.registration.cookies.getSubscriptions();

Specifications

Specification
Cookie Store API
# cookiestoremanager

Browser compatibility

BCD tables only load in the browser