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

View in English Always switch to English

ServiceWorkerGlobalScope: push-Ereignis

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨März 2023⁩.

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 Scope eines Service Workers gesendet (vertreten durch die ServiceWorkerGlobalScope-Schnittstelle), wenn der Service Worker eine Push-Nachricht erhalten hat.

Dieses Ereignis kann nicht abgebrochen werden und wird nicht weitergegeben.

Syntax

Verwenden Sie den Ereignisnamen in Methoden wie addEventListener(), oder setzen Sie eine Ereignis-Handler-Eigenschaft.

js
addEventListener("push", (event) => { })

onpush = (event) => { }

Ereignistyp

Ein PushEvent. Erbt von Event.

Event ExtendableEvent PushEvent

Ereigenschaften

Erbt Eigenschaften von seinem Elternteil, ExtendableEvent. Zusätzliche Eigenschaften:

PushEvent.data Schreibgeschützt

Gibt eine Referenz zu einem PushMessageData-Objekt zurück, das Daten enthält, die an das PushSubscription gesendet wurden.

Beispiel

Dieses Beispiel richtet einen Handler für push-Ereignisse ein, der JSON-Daten entnimmt, sie analysiert und die Nachricht basierend auf den im Nachrichteninhalt enthaltenen Informationen zur Verarbeitung weiterleitet.

js
self.addEventListener("push", (event) => {
  let message = event.data.json();

  switch (message.type) {
    case "init":
      doInit();
      break;
    case "shutdown":
      doShutdown();
      break;
  }
});

Spezifikationen

Specification
Push API
# extensions-to-the-serviceworkerglobalscope-interface
Push API
# dom-serviceworkerglobalscope-onpush

Browser-Kompatibilität

Siehe auch