CookieStore: getAll() Methode
Baseline 2025>
Neu verfügbar
Seit Juni 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 browser support for this feature? Tell us why.
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 getAll()-Methode der CookieStore-Schnittstelle gibt ein Promise zurück, das als ein Array von Cookies aufgelöst wird, die dem übergebenen name oder options entsprechen. Wenn keine Parameter übergeben werden, werden alle Cookies für den aktuellen Kontext zurückgegeben.
Syntax
getAll()
getAll(name)
getAll(options)
Parameter
nameOptional-
Ein String mit dem Namen eines Cookies.
Oder
optionsOptional-
Ein Objekt, das enthält:
Hinweis:
Die url-Option ermöglicht die Modifikation eines Cookies, das unter einer bestimmten URL definiert ist. Service Worker können Cookies abrufen, die an jede URL unter ihrem Geltungsbereich gesendet würden. Aus einem Dokument können Sie nur die Cookies an der aktuellen URL abrufen, daher ist die einzige gültige URL im Kontext eines Dokuments die URL des Dokuments selbst.
Rückgabewert
Ein Promise, das mit einem Array von Objekten aufgelöst wird, die Cookies repräsentieren, die dem angegebenen name oder options entsprechen.
Jedes Objekt enthält die folgenden Eigenschaften:
name-
Ein String, der den Namen des Cookies enthält.
value-
Ein String, der den Wert des Cookies enthält.
Die folgenden Eigenschaften sind nicht standardisiert und sollten nicht als zuverlässig angesehen werden:
domain-
Ein String, der die Domain des Cookies enthält.
expires-
Ein Zeitstempel, in Millisekunden als Unix-Zeit angegeben, der das Ablaufdatum des Cookies enthält.
partitioned-
Ein boolean, der anzeigt, ob das Cookie ein partitioniertes Cookie ist (
true) oder nicht (false). Weitere Informationen finden Sie unter Cookies Having Independent Partitioned State (CHIPS). path-
Ein String, der den Pfad des Cookies enthält.
sameSite-
Einer der folgenden
SameSite-Werte:"strict","lax", oder"none". secure-
Ein boolean-Wert, der angibt, ob das Cookie nur in sicheren Kontexten verwendet werden soll (
true) oder nicht (false).
Ausnahmen
SecurityErrorDOMException-
Wird ausgelöst, wenn der Ursprung sich nicht in eine URL serialisieren lässt.
TypeError-
Wird ausgelöst, wenn:
- Die Methode im Haupt-Thread aufgerufen wird und die
url-Option angegeben ist, die jedoch nicht mit der URL des aktuellen Fensters übereinstimmt. - Die Methode in einem Worker aufgerufen wird und die
url-Option angegeben ist, die jedoch nicht mit dem Ursprung des Workers übereinstimmt. - Das Abfragen von Cookies, die durch den angegebenen
nameoderoptionsrepräsentiert werden, fehlschlägt.
- Die Methode im Haupt-Thread aufgerufen wird und die
Beispiele
Alle Cookies für diesen Kontext abrufen
Dieses Beispiel zeigt, wie man alle Cookies im aktuellen Kontext abruft.
Zuerst definieren wir setTestCookies(), wodurch die Test-Cookies "cookie1" und "cookie2" erstellt werden, wobei etwaige Fehler protokolliert werden.
async function setTestCookies() {
// Set two cookies
try {
await cookieStore.set("cookie1", "cookie1-value");
} catch (error) {
console.log(`Error setting cookie1: ${error}`);
}
try {
await cookieStore.set("cookie2", "cookie2-value");
} catch (error) {
console.log(`Error setting cookie2: ${error}`);
}
}
Die Methode cookieTest() ruft setTestCookies() auf und wartet dann auf getAll().
Dies gibt ein Promise zurück, das alle Cookies für diesen Kontext als ein Array von Objekten oder ein leeres Array, wenn keine Cookies vorhanden sind, auflöst.
Wenn das zurückgegebene Promise mit einem Array aufgelöst wird, das Cookie-Informationen enthält, gehen wir das Array durch und protokollieren jedes Cookie ("cookie1" und "cookie2").
async function cookieTest() {
// Set our test cookies
await setTestCookies();
// Get all cookies
const cookies = await cookieStore.getAll();
// Iterate the cookies, or log that none were found
if (cookies.length > 0) {
console.log(`Found cookies: ${cookies.length}:`);
cookies.forEach((cookie) => console.log(cookie));
} else {
console.log("Cookies not found");
}
}
Spezifikationen
| Spezifikation |
|---|
| Cookie Store API> # dom-cookiestore-getall> |