Firefox Tomorrow

web api instance method

CookieStore: get() method

View on MDN ↗

Secure contextAvailable in workers

The get() method of the CookieStore interface returns a Promise that resolves to a single cookie matching the given name or options object. The method will return the first cookie that matches.

Syntax

get(name)
get(options)

Parameters

This method requires one of the following:

  • name Optional
    • : A string with the name of a cookie.

Or

  • options Optional
    • : An object containing:
      • name
        • : A string with the name of a cookie.
      • url
        • : A string with the URL of a cookie.

[!NOTE] The url option enables the modification of a cookie scoped under a particular URL. Service workers can obtain cookies that would be sent to any URL under their scope. From a document you may only obtain the cookies at the current URL, so the only valid URL in a document context is the document’s URL.

Return value

A Promise that resolves with an object representing the first cookie matching the submitted name or options, or null if there is no matching cookie.

The object returned for a match contains the following properties:

  • domain Experimental

    • : A string containing the domain of the cookie.
  • expires Experimental

    • : A timestamp, given as Unix time in milliseconds, containing the expiration date of the cookie.
  • name Experimental

    • : A string containing the name of the cookie.
  • partitioned Experimental

  • path Experimental

    • : A string containing the path of the cookie.
  • sameSite Experimental

  • secure Experimental

    • : A boolean value indicating whether the cookie is to be used in secure contexts only (true) or not (false).
  • value Experimental

    • : A string containing the value of the cookie.

Exceptions

  • SecurityError DOMException
    • : Thrown if the origin does not serialize to a URL.
  • TypeError
    • : Thrown if:
      • The options parameter is an empty object.
      • The method is called in the main thread, and the url option is specified but does not match the URL of the current window.
      • The method is called in a worker and the url option is specified, but does not match the origin of the worker.
      • Querying cookies represented by the given name or options fails.

Examples

This example shows how to get a particular cookie by name.

The code first creates a cookie named “cookie1” using set(), logging any errors to the console. It then waits on get() to retrieve information about that same cookie. If the returned promise resolves with an object we log the cookie: otherwise we log that no matching cookie was found.

async function cookieTest() {
  // Set test cookie
  try {
    await cookieStore.set("cookie1", "cookie1-value");
  } catch (error) {
    console.log(`Error setting cookie1: ${error}`);
  }

  // Get cookie, specifying name
  const cookie = await cookieStore.get("cookie1");

  if (cookie) {
    console.log(cookie);
  } else {
    console.log("cookie1: Cookie not found");
  }
}

cookieTest();

Specifications

SpecificationsStandards references are available on the canonical MDN page.

Browser compatibility

Browser compatibilityCompatibility data is available on the canonical MDN page.