CookieStoreManager: subscribe() Methode

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

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 der CookieStoreManager Schnittstelle abonniert ein ServiceWorkerRegistration für Cookie-Änderungsereignisse.

Syntax

js
subscribe(subscriptions)

Parameter

subscriptions

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

name

Ein String mit dem Namen eines Cookies.

url

Ein String mit der URL eines Cookie-Bereichs. Diese kann enger gefasst sein als der Bereich der Service Worker-Registrierung.

Rückgabewert

Ein Promise, das sich mit undefined auflöst, wenn das Abonnement abgeschlossen ist.

Ausnahmen

TypeError

Wird ausgelöst, wenn die in subscriptions übergebene URL nicht mit dem scope der Service Worker-Registrierung übereinstimmt.

Beispiele

In diesem Beispiel abonniert die durch registration dargestellte ServiceWorkerRegistration Änderungsereignisse für das Cookie mit dem Namen "cookie1" und einem Bereich von "/path1".

js
const subscriptions = [{ name: "cookie1", url: `/path1` }];
await registration.cookies.subscribe(subscriptions);

Die URL, die der subscribe() Methode übergeben wird, kann enger gefasst sein als der Service Worker-Registrierungsbereich. Im folgenden Beispiel ist das Abonnement für /path/one/, sodass es Änderungsereignisse für Änderungen am ersten Cookie, aber nicht am zweiten, erhält.

js
registration.cookies.subscribe([{ name: "cookie1", url: "/path/one/" }]); // subscription
cookieStore.set({ name: "cookie1", value: "cookie-value", path: "/path/one/" }); // receives a change event
cookieStore.set({ name: "cookie1", value: "cookie-value", path: "/path/two/" }); // does not receive a change event

Spezifikationen

Specification
Cookie Store API
# dom-cookiestoremanager-subscribe

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
subscribe

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support