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 des CookieStore-Interfaces setzt einen Cookie mit dem gegebenen name und value oder einem options-Objekt.
Syntax
set(name, value)
set(options)
Parameter
Diese Methode erfordert eines der folgenden:
nameOptional-
Ein String mit dem Namen des Cookies.
valueOptional-
Ein String mit dem Wert des Cookies.
Oder
optionsOptional-
Ein Objekt, das Folgendes enthält:
domainOptional-
Ein String, der die Domäne des Cookies enthält. Standardwert ist
null. expiresOptional-
Ein Zeitstempel, angegeben als Unix-Zeit in Millisekunden, der das Ablaufdatum des Cookies enthält. Standardwert ist
null. maxAgeOptional-
Eine Zahl, die die Anzahl der Sekunden bis zum Ablauf des Cookies darstellt. Eine Null oder eine negative Zahl lassen den Cookie sofort ablaufen. Wenn sowohl
expiresals auchmaxAgegesetzt sind, schlägt derset()-Aufruf mit einemTypeErrorfehl. Standardwert istnull. name-
Ein String mit dem Namen eines Cookies.
partitionedOptional-
Ein boolescher Wert, der standardmäßig
falseist. Wenn auftruegesetzt, wird der gesetzte Cookie ein partitionierter Cookie sein. Weitere Informationen finden Sie unter Cookies mit unabhängigem partitioniertem Zustand (CHIPS). pathOptional-
Ein String, der den Pfad des Cookies enthält. Standardwert ist
/. sameSiteOptional-
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 können und intern verwendet werden, geben einige Browser nur name und value-Optionen von CookieStore.get() und CookieStore.getAll() zurück.
Rückgabewert
Ein Promise, das sich mit undefined auflöst, wenn das Setzen des Cookies abgeschlossen ist.
Ausnahmen
SecurityErrorDOMException-
Wird ausgelöst, wenn der Ursprung nicht in eine URL serialisiert werden kann.
TypeError-
Wird ausgelöst, wenn:
- Sowohl die Eigenschaften
expiresals auchmaxAgegesetzt sind. - Das Setzen des Cookies mit dem gegebenen
nameundvalueoderoptionsauf andere Weise fehlschlägt.
- Sowohl die Eigenschaften
Beispiele
Setzen eines Cookies mit Namen und Wert
In diesem Beispiel wird ein Cookie gesetzt, indem ein name und value von "cookie1" und "cookie1-value" übergeben wird.
Die anderen Eigenschaften des Cookies werden mit den Standardwerten gesetzt, wie sie im options-Parameter definiert sind.
Der Code wartet zunächst darauf, dass der Cookie gesetzt wird: Da diese Operation fehlschlagen kann, wird die Operation in einem try...catch-Block durchgeführt und alle Fehler werden in der Konsole protokolliert. Anschließend wird der gerade gesetzte Cookie abgerufen und protokolliert.
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
In diesem Beispiel wird ein Cookie gesetzt, indem ein options-Objekt mit name, value, expires und partitioned übergeben wird.
Der Code wartet zunächst darauf, dass der Cookie gesetzt wird: Da diese Operation fehlschlagen kann, wird die Operation in einem try...catch-Block durchgeführt und alle Fehler werden in der Konsole protokolliert. Anschließend wird der gerade gesetzte Cookie abgerufen und protokolliert.
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> |