Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
PushEvent
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 PushEvent-Interface der Push-API repräsentiert eine empfangene Push-Nachricht. Dieses Ereignis wird an den globalen Bereich eines ServiceWorker gesendet. Es enthält die Informationen, die von einem Anwendungsserver an ein PushSubscription gesendet wurden.
Konstruktor
PushEvent()-
Erstellt ein neues
PushEvent-Objekt.
Instanz-Eigenschaften
Erbt Eigenschaften von seinem Elternteil, ExtendableEvent. Zusätzliche Eigenschaften:
PushEvent.dataSchreibgeschützt-
Gibt eine Referenz auf ein
PushMessageData-Objekt zurück, das Daten enthält, die an dasPushSubscriptiongesendet wurden.
Instanz-Methoden
Erbt Methoden von seinem Elternteil, ExtendableEvent .
Beispiele
Das folgende Beispiel entnimmt Daten aus einem PushEvent und zeigt diese auf allen Clients des Service Workers an.
self.addEventListener("push", (event) => {
if (!(self.Notification && self.Notification.permission === "granted")) {
return;
}
const data = event.data?.json() ?? {};
const title = data.title || "Something Has Happened";
const message =
data.message || "Here's something you might want to check out.";
const icon = "images/new-notification.png";
const notification = new self.Notification(title, {
body: message,
tag: "simple-push-demo-notification",
icon,
});
notification.addEventListener("click", () => {
clients.openWindow(
"https://example.blog.com/2015/03/04/something-new.html",
);
});
});
Spezifikationen
| Spezifikation |
|---|
| Push API> # pushevent-interface> |
Browser-Kompatibilität
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.