PushEvent.data

This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.

The data read-only property of the PushEvent interface returns a reference to a PushMessageData object containing data sent to the PushSubscription.

Syntax

var myPushData = PushEvent.data;

Value

A PushMessageData object.

Examples

The following example takes data from a PushEvent and displays it on all of the service workers' clients.

self.addEventListener('push', function(event) {
  if (!(self.Notification && self.notification.permission === 'granted')) {
    return;
  }
  var data = {};
  if (event.data) {
    data = event.data.json();
  }
  var title = data.title || "Something Has Happened";
  var message = data.message || "Here's something you might want to check out.";
  var icon = "images/new-notification.png";
  var notification = new Notification(title, {
    body: message,
    tag: 'simple-push-demo-notification',
    icon: icon
  });
  notification.addEventListener('click', function() {
    if (clients.openWindow) {
      clients.openWindow('https://example.blog.com/2015/03/04/something-new.html');
    }
  };
});

Specifications

Specification Status Comment
Push API
The definition of 'data' in that specification.
Working Draft Initial definition.

Browser Compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support No support 44.0 (44.0)[1] No support ? No support
Feature Android Android Webview Firefox Mobile (Gecko) Firefox OS IE Mobile Opera Mobile Safari Mobile Chrome for Android
Basic support No support No support 48.0 (48)[2] No support No support No support No support No support

Document Tags and Contributors

 Contributors to this page: chrisdavidmills, marco-c
 Last updated by: chrisdavidmills,