ServiceWorkerGlobalScope: push-Ereignis
Baseline
Weitgehend verfügbar
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit März 2023 browserübergreifend verfügbar.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Hinweis: Diese Funktion ist nur in Service Workers verfügbar.
Das push-Ereignis wird an den globalen Gültigkeitsbereich eines Service Workers gesendet (repräsentiert durch die Schnittstelle ServiceWorkerGlobalScope), wenn der Service Worker eine Push-Nachricht empfangen hat.
Dieses Ereignis kann nicht abgebrochen werden und wird nicht nach oben weitergegeben.
Syntax
Verwenden Sie den Ereignisnamen in addEventListener():
addEventListener("push", (event) => { })
Alternativ können Sie der Event-Handler-Eigenschaft der Schnittstelle einen Wert zuweisen:
onpush = (event) => { }
Ereignistyp
Beispiel
Dieses Beispiel richtet einen Handler für push-Ereignisse ein, der JSON-Daten entgegennimmt und parst. Anschließend leitet er die Nachricht anhand der darin enthaltenen Informationen zur Verarbeitung weiter.
self.addEventListener("push", (event) => {
let message = event.data.json();
switch (message.type) {
case "init":
doInit();
break;
case "shutdown":
doShutdown();
break;
}
});
Spezifikationen
| Spezifikation |
|---|
| Push API> # extensions-to-the-serviceworkerglobalscope-interface> |
| Push API> # dom-serviceworkerglobalscope-onpush> |