Cookie Store API
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Hinweis: Dieses Feature ist verfügbar in Service Workers.
Die Cookie Store API ist eine asynchrone API zum Verwalten von Cookies, die in Fenstern und auch in Service-Workern verfügbar ist.
Konzepte und Verwendung
Die bestehende Methode zum Abrufen und Setzen von Cookies umfasst die Arbeit mit document.cookie
als Zeichenfolge von Schlüssel/Wert-Paaren. Neben der Tatsache, dass dies umständlich und fehleranfällig ist, gibt es auch eine Reihe von Problemen im Kontext der modernen Webentwicklung.
Die Schnittstelle document.cookie
ist synchron, single-threaded und blockierend. Beim Schreiben eines Cookies müssen Sie warten, bis der Browser die Zeichenfolge aller Cookies aktualisiert hat. Zudem bedeutet die Abhängigkeit von document
, dass Cookies von Service-Workern, die nicht auf das document
-Objekt zugreifen können, nicht erreicht werden können.
Die Cookie Store API bietet eine aktualisierte Methode zum Verwalten von Cookies. Sie ist asynchron und basiert auf Versprechen, sodass sie die Ereignisschleife nicht blockiert. Sie ist unabhängig von document
und steht daher Service-Workern zur Verfügung. Die Methoden zum Abrufen und Setzen von Cookies bieten außerdem durch Fehlermeldungen mehr Feedback. Dies bedeutet, dass Webentwickler nicht ein Cookie setzen und dann sofort zurücklesen müssen, um zu überprüfen, ob das Setzen erfolgreich war.
Schnittstellen
-
Die Schnittstelle
CookieStore
ermöglicht das Abrufen und Setzen von Cookies. -
Die Schnittstelle
CookieStoreManager
bietet eine Registrierung für Service-Worker, um ihnen zu ermöglichen, sich für Ereignisse zu Cookie-Änderungen zu registrieren. -
Ein
CookieChangeEvent
mit dem Namenchange
wird gegenCookieStore
-Objekte inWindow
-Kontexten ausgelöst, wenn skript-sichtbare Cookie-Änderungen auftreten. -
Ein
ExtendableCookieChangeEvent
mit dem Namencookiechange
wird inServiceWorkerGlobalScope
-Kontexten ausgelöst, wenn skript-sichtbare Cookie-Änderungen auftreten, die der Cookie-Änderungs-Abonnementliste des Service-Workers entsprechen.
Erweiterungen zu anderen Schnittstellen
-
Gibt eine Referenz auf das mit dem Service-Worker verbundene
CookieStore
-Objekt zurück. -
Gibt eine Referenz auf die Schnittstelle
CookieStoreManager
zurück, die es einer Web-App ermöglicht, sich für Cookie-Änderungsereignisse zu registrieren und diese abzubestellen. -
Gibt eine Referenz auf das
CookieStore
-Objekt für den aktuellen Dokumentkontext zurück. -
Wird ausgelöst, wenn Cookie-Änderungen aufgetreten sind, die der Cookie-Änderungs-Abonnementliste des Service-Workers entsprechen.
Spezifikationen
Specification |
---|
Cookie Store API |
Browser-Kompatibilität
api.CookieStore
BCD tables only load in the browser
api.CookieStoreManager
BCD tables only load in the browser