PushEvent
Baseline 2023 Newly available
Since March 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is only available in Service Workers.
The PushEvent
interface of the Push API represents a push message that has been received. This event is sent to the global scope of a ServiceWorker
. It contains the information sent from an application server to a PushSubscription
.
Constructor
PushEvent()
-
Creates a new
PushEvent
object.
Instance properties
Inherits properties from its parent, ExtendableEvent
. Additional properties:
PushEvent.data
Read only-
Returns a reference to a
PushMessageData
object containing data sent to thePushSubscription
.
Instance methods
Inherits methods from its parent, ExtendableEvent
.
Examples
The following example takes data from a PushEvent
and displays it on all of the service worker's clients.
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", ); }); });
Specifications
Specification |
---|
Push API> # pushevent-interface> |
Browser compatibility
Loading…