ServiceWorkerRegistration
Baseline
Widely available
*
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2018.
* 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 Web Workers verfügbar.
Das ServiceWorkerRegistration-Interface der Service Worker API repräsentiert die Registrierung des Service Workers. Sie registrieren einen Service Worker, um eine oder mehrere Seiten zu steuern, die den gleichen Ursprung teilen.
Die Lebensdauer einer Service Worker-Registrierung überdauert die von ServiceWorkerRegistration-Objekten, die sie innerhalb der Lebensdauer ihrer entsprechenden Service Worker-Clients darstellen. Der Browser führt eine persistente Liste aktiver ServiceWorkerRegistration-Objekte.
Instanz-Eigenschaften
Erbt auch Eigenschaften von seinem Eltern-Interface, EventTarget.
ServiceWorkerRegistration.activeSchreibgeschützt-
Gibt einen Service Worker zurück, dessen Zustand
activatingoderactivatedist. Dies ist anfangs aufnullgesetzt. Ein aktiver Worker wird einenClientsteuern, wenn die URL des Clients in den Umfang der Registrierung fällt (diescope-Option, die gesetzt wird, wennServiceWorkerContainer.registerzum ersten Mal aufgerufen wird.) ServiceWorkerRegistration.backgroundFetchSchreibgeschützt Experimentell-
Gibt eine Referenz auf ein
BackgroundFetchManager-Objekt zurück, das Hintergrundabrufvorgänge verwaltet. -
Gibt eine Referenz auf die
CookieStoreManager-Schnittstelle zurück, die das Abonnieren und Abbestellen von Cookie-Änderungsereignissen ermöglicht. ServiceWorkerRegistration.indexSchreibgeschützt Experimentell-
Gibt eine Referenz auf die
ContentIndex-Schnittstelle zurück, zum Verwalten von indizierten Inhalten für die Offline-Ansicht. ServiceWorkerRegistration.installingSchreibgeschützt-
Gibt einen Service Worker zurück, dessen Zustand
installingist. Dies ist anfangs aufnullgesetzt. -
Gibt die Instanz von
NavigationPreloadManagerzurück, die mit der aktuellen Service Worker-Registrierung assoziiert ist. ServiceWorkerRegistration.paymentManagerSchreibgeschützt Experimentell-
Gibt die Instanz eines Zahlungs-App
s [PaymentManager`](/de/docs/Web/API/PaymentManager) zurück, die verwendet wird, um verschiedene Funktionen der Zahlungs-App zu verwalten. ServiceWorkerRegistration.periodicSyncSchreibgeschützt Experimentell-
Gibt eine Referenz auf die
PeriodicSyncManager-Schnittstelle zurück, die das Registrieren von Aufgaben ermöglicht, die in bestimmten Intervallen ausgeführt werden sollen. ServiceWorkerRegistration.pushManagerSchreibgeschützt-
Gibt eine Referenz auf die
PushManager-Schnittstelle zurück, um Push-Abonnements zu verwalten, einschließlich Abonnieren, Abrufen eines aktiven Abonnements und Zugreifen auf den Push-Berechtigungsstatus. ServiceWorkerRegistration.scopeSchreibgeschützt-
Gibt einen String zurück, der eine URL repräsentiert, die den Registrierungsumfang eines Service Workers definiert; das bedeutet, den Bereich von URLs, die der Service Worker steuern kann.
ServiceWorkerRegistration.syncSchreibgeschützt-
Gibt eine Referenz auf die
SyncManager-Schnittstelle zurück, die Hintergrundsynchronisierungsprozesse verwaltet. ServiceWorkerRegistration.updateViaCacheSchreibgeschützt-
Gibt den Wert der Einstellung zurück, die bestimmt, unter welchen Umständen der Browser den HTTP-Cache heranzieht, wenn er versucht, den Service Worker oder Skripte, die über
importScripts()importiert werden, zu aktualisieren. Es kann einer der folgenden sein:imports,allodernone. ServiceWorkerRegistration.waitingSchreibgeschützt-
Gibt einen Service Worker zurück, dessen Zustand
installedist. Dies ist anfangs aufnullgesetzt.
Instanz-Methoden
Erbt auch Methoden von seinem Eltern-Interface, EventTarget.
ServiceWorkerRegistration.getNotifications()-
Gibt eine Liste der Benachrichtigungen in der Reihenfolge zurück, in der sie über den aktuellen Ursprung über die aktuelle Service Worker-Registrierung erstellt wurden.
ServiceWorkerRegistration.showNotification()-
Zeigt die Benachrichtigung mit dem angeforderten Titel an.
ServiceWorkerRegistration.unregister()-
Hebt die Registrierung des Service Workers auf und gibt ein
Promisezurück. Der Service Worker wird alle laufenden Operationen abschließen, bevor er registriert wird. ServiceWorkerRegistration.update()-
Überprüft den Server auf eine aktualisierte Version des Service Workers, ohne die Caches zu konsultieren.
Ereignisse
updatefound-
Wird ausgelöst, wenn immer die
ServiceWorkerRegistration.installing-Eigenschaft einen neuen Service Worker erhält.
Beispiele
In diesem Beispiel überprüft der Code zunächst, ob der Browser Service Worker unterstützt, und registriert dann einen, falls ja. Anschließend wird ein updatefound-Listener hinzugefügt, in dem die Service Worker-Registrierung verwendet wird, um auf weitere Änderungen im Zustand des Service Workers zu lauschen. Wenn sich der Service Worker seit der letzten Registrierung nicht geändert hat, wird das updatefound-Ereignis nicht ausgelöst.
if ("serviceWorker" in navigator) {
navigator.serviceWorker
.register("/sw.js")
.then((registration) => {
registration.addEventListener("updatefound", () => {
// If updatefound is fired, it means that there's
// a new service worker being installed.
const installingWorker = registration.installing;
console.log(
"A new service worker is being installed:",
installingWorker,
);
// You can listen for changes to the installing service worker's
// state via installingWorker.onstatechange
});
})
.catch((error) => {
console.error(`Service worker registration failed: ${error}`);
});
} else {
console.error("Service workers are not supported.");
}
Spezifikationen
| Specification |
|---|
| Service Workers> # serviceworkerregistration-interface> |
| Push API> # extensions-to-the-serviceworkerregistration-interface> |
Browser-Kompatibilität
Loading…