CookieStore

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

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The CookieStore interface of the 'Cookie Store API' provides methods for getting and setting cookies asynchronously from either a page or a service worker.

The CookieStore is accessed via attributes in the global scope in a Window or ServiceWorkerGlobalScope context. Therefore there is no constructor.

EventTarget CookieStore

Instance methods

CookieStore.delete() Experimental

The delete() method deletes a cookie with the given name or options object, it returns a Promise that resolves when the deletion completes.

CookieStore.get() Experimental

The get() method gets a single cookie with the given name or options object, it returns a Promise that resolves with details of a single cookie.

CookieStore.getAll() Experimental

The getAll() method gets all matching cookies, it returns a Promise that resolves with a list of cookies.

CookieStore.set() Experimental

The set() method sets a cookie with the given name and value or options object, it returns a Promise that resolves when the cookie is set.

Events

change Experimental

The change event fires when a change is made to any cookie.

Examples

In this example we set a cookie and write to the console feedback as to whether the operation succeeded or failed.

const day = 24 * 60 * 60 * 1000;
cookieStore
  .set({
    name: "cookie1",
    value: "cookie1-value",
    expires: Date.now() + day,
    domain: "example.com",
  })
  .then(
    () => {
      console.log("It worked!");
    },
    (reason) => {
      console.error("It failed: ", reason);
    }
  );

Specifications

Specification
Cookie Store API
# CookieStore

Browser compatibility

BCD tables only load in the browser