CookieStore: set() Methode

Baseline 2025 *
Newly available

Since June 2025, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

* Some parts of this feature may have varying levels of support.

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Hinweis: Diese Funktion ist in Service Workers verfügbar.

Die set() Methode der CookieStore Schnittstelle setzt ein Cookie mit dem angegebenen name und value oder einem options-Objekt.

Syntax

js
set(name, value)
set(options)

Parameter

Diese Methode erfordert eine der folgenden Angaben:

name Optional

Ein String mit dem Namen des Cookies.

value Optional

Ein String mit dem Wert des Cookies.

Oder

options Optional

Ein Objekt, das folgende enthält:

domain Optional

Ein String, der die Domain des Cookies enthält. Standardwert ist null.

expires Optional

Ein Zeitstempel, angegeben als Unix-Zeit in Millisekunden, der das Ablaufdatum des Cookies enthält. Standardwert ist null.

name

Ein String mit dem Namen eines Cookies.

partitioned Optional

Ein boolescher Wert, der standardmäßig auf false steht. Wenn er auf true gesetzt wird, wird das gesetzte Cookie ein partitioniertes Cookie sein. Weitere Informationen finden Sie unter Cookies Having Independent Partitioned State (CHIPS).

path Optional

Ein String, der den Pfad des Cookies enthält. Standardwert ist /.

sameSite Optional

Einer der folgenden SameSite-Werte: "strict", "lax" oder "none".

value

Ein String mit dem Wert des Cookies.

Hinweis: Obwohl die Werte hier gesetzt werden können und intern verwendet werden, werden einige Browser nur name und value Optionen von CookieStore.get() und CookieStore.getAll() zurückgeben.

Rückgabewert

Ein Promise, das sich mit undefined auflöst, wenn das Setzen des Cookies abgeschlossen ist.

Ausnahmen

SecurityError DOMException

Wird ausgelöst, wenn der Ursprung nicht zu einer URL serialisiert werden kann.

TypeError

Wird ausgelöst, wenn das Setzen des Cookies mit dem gegebenen name und value oder options fehlschlägt.

Beispiele

Setzen eines Cookies mit Name und Wert

Dieses Beispiel setzt ein Cookie, indem ein name und value von "cookie1" beziehungsweise "cookie1-value" übergeben wird. Die anderen Eigenschaften des Cookies werden mit Standardwerten gesetzt, wie im options Parameter definiert.

Der Code wartet zuerst darauf, dass das Cookie gesetzt wird: Da diese Operation fehlschlagen kann, wird die Operation in einem try...catch Block durchgeführt und alle Fehler werden an die Konsole protokolliert. Danach wird das gerade gesetzte Cookie geholt und protokolliert.

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

  // Get the cookie and log its values
  const cookie = await cookieStore.get("cookie1");
  console.log(cookie);
}

Setzen eines Cookies mit Optionen

Dieses Beispiel setzt ein Cookie, indem ein options-Objekt mit name, value, expires und partitioned übergeben wird.

Der Code wartet zuerst darauf, dass das Cookie gesetzt wird: Da diese Operation fehlschlagen kann, wird die Operation in einem try...catch Block durchgeführt und alle Fehler werden an die Konsole protokolliert. Danach wird das gerade gesetzte Cookie geholt und protokolliert.

js
async function cookieTest() {
  const day = 24 * 60 * 60 * 1000;
  const cookieName = "cookie2";
  try {
    // Set cookie: passing options
    await cookieStore.set({
      name: cookieName,
      value: `${cookieName}-value`,
      expires: Date.now() + day,
      partitioned: true,
    });
  } catch (error) {
    log(`Error setting ${cookieName}: ${error}`);
    console.log(error);
  }

  // Log the new cookie
  const cookie = await cookieStore.get(cookieName);
  console.log(cookie);
}

Spezifikationen

Specification
Cookie Store API
# dom-cookiestore-set

Browser-Kompatibilität