Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

CookieStore: set()-Methode

Baseline 2025 *
Neu verfügbar

Seit June 2025 funktioniert diese Funktion auf aktuellen Geräten und in aktuellen Browserversionen. Auf älteren Geräten oder in älteren Browsern funktioniert sie möglicherweise nicht.

Want more support for this feature? Tell us why.

* Einige Teile dieser Funktion werden möglicherweise unterschiedlich gut unterstützt.

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 des CookieStore-Interfaces setzt ein Cookie mit dem gegebenen name und value oder options Objekt.

Syntax

js
set(name, value)
set(options)

Parameter

Diese Methode erfordert eines der folgenden:

name Optional

Ein String mit dem Namen des Cookies.

value Optional

Ein String mit dem Wert des Cookies.

Oder

options Optional

Ein Objekt, das Folgendes enthält:

domain Optional

Ein String, der die Domäne des Cookies enthält. Standardmäßig null.

expires Optional

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

maxAge Optional

Eine Zahl, die die Anzahl der Sekunden bis zum Ablaufen des Cookies darstellt. Eine Null oder eine negative Zahl wird das Cookie sofort ablaufen lassen. Wenn sowohl expires als auch maxAge gesetzt sind, schlägt der set()-Aufruf mit einem TypeError fehl. Standardmäßig null.

name

Ein String mit dem Namen des Cookies.

partitioned Optional

Ein boolescher Wert, der standardmäßig auf false gesetzt ist. Wenn auf true gesetzt, wird das gesetzte Cookie ein partitioniertes Cookie sein. Weitere Informationen finden Sie unter Cookies mit unabhängigem partioniertem Zustand (CHIPS).

path Optional

Ein String, der den Pfad des Cookies enthält. Standardmäßig /.

sameSite Optional

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

value

Ein String mit dem Wert des Cookies.

Hinweis: Während die Werte hier gesetzt werden 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:

  • Sowohl die expires als auch die maxAge Eigenschaften gesetzt sind.
  • Das Setzen des Cookies mit dem gegebenen name und value oder options auf andere Weise fehlschlägt.

Beispiele

Setzen eines Cookies mit Name und Wert

Dieses Beispiel setzt ein Cookie, indem es einen name und value von "cookie1" und "cookie1-value" übergibt. 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 dieser Vorgang fehlschlagen kann, wird die Operation in einem try...catch Block ausgeführt und alle Fehler werden in der Konsole protokolliert. Anschließend wird das gerade gesetzte Cookie abgerufen 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 es ein options-Objekt mit name, value, expires und partitioned übergibt.

Der Code wartet zuerst darauf, dass das Cookie gesetzt wird: Da dieser Vorgang fehlschlagen kann, wird die Operation in einem try...catch Block durchgeführt und alle Fehler werden in der Konsole protokolliert. Anschließend wird das gerade gesetzte Cookie abgerufen 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

Spezifikation
Cookie Store API
# dom-cookiestore-set

Browser-Kompatibilität