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

View in English Always switch to English

CookieStoreManager: subscribe() Methode

Eingeschränkt verfügbar

Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.

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 subscribe() Methode des CookieStoreManager Schnittstelle meldet eine ServiceWorkerRegistration für Cookie-Änderungsereignisse an.

Doppelte Abonnements werden ignoriert: Das heißt, wenn ein Service Worker sich mehrmals für dasselbe Cookie anmeldet, erhält er jede Änderungsbenachrichtigung nur einmal.

Syntax

js
subscribe(subscriptions)

Parameter

subscriptions

Ein Array von Objekten, die jeweils die folgenden Eigenschaften haben:

name Optional

Ein String, der dem Namen eines Cookies entspricht. Wenn name weggelassen wird, meldet sich der Service Worker für Änderungsereignisse aller Cookies im Gültigkeitsbereich an.

url Optional

Ein String, der der URL eines Cookie-Gültigkeitsbereichs entspricht. Dieser kann enger als der Gültigkeitsbereich der Service Worker-Registrierung sein. Wenn url weggelassen wird, ist der Standardwert der Gültigkeitsbereich der Service Worker-Registrierung.

Rückgabewert

Ein Promise, das mit undefined aufgelöst wird, wenn das Abonnement abgeschlossen ist.

Ausnahmen

TypeError

Wird ausgelöst, wenn die url keine gültige URL ist oder nicht mit dem scope der Service Worker-Registrierung beginnt.

Beispiele

Festlegung von Name und URL

In diesem Beispiel meldet sich die ServiceWorkerRegistration, die durch registration dargestellt wird, für Änderungsereignisse des Cookies mit dem Namen "cookie1" und einem Gültigkeitsbereich von "/path1" an.

js
// Subscribe to a specific cookie and URL
const subscriptions = [{ name: "cookie1", url: `/path1` }];
await registration.cookies.subscribe(subscriptions);

Nur den Namen festlegen

In diesem Beispiel setzen wir nur name und lassen url weg: Das Abonnement gilt für alle Cookies mit dem Namen cookie1 im Gültigkeitsbereich des Service Workers.

js
// Subscribe to all cookies named "cookie1" in the registration scope
await registration.cookies.subscribe([{ name: "cookie1" }]);

Nur die URL festlegen

In diesem Beispiel setzen wir nur url und lassen name weg: Das Abonnement gilt für alle Cookies im angegebenen URL-Gültigkeitsbereich.

js
// Subscribe to all cookie changes within a specific path
await registration.cookies.subscribe([{ url: "/path/one/" }]);

Anmeldung für alle Cookies

In diesem Beispiel werden sowohl name als auch url weggelassen. Das Abonnement gilt für alle Cookies im Gültigkeitsbereich des Service Workers.

js
// Subscribe to all cookie changes within the entire registration scope
await registration.cookies.subscribe([{}]);

Eine URL außerhalb des Gültigkeitsbereichs des Service Workers setzen

Wenn die URL außerhalb des Gültigkeitsbereichs des Service Workers liegt, wird subscribe() einen TypeError auslösen.

js
await registration.cookies.subscribe([
  { name: "cookie1", url: "/out-of-scope/" },
]);

Spezifikationen

Spezifikation
Cookie Store API
# dom-cookiestoremanager-subscribe

Browser-Kompatibilität