MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

これは実験段階の機能です。
この機能は複数のブラウザで開発中の状態にあります。各ブラウザで用いるために、適切なベンダー接頭辞が必要な場合があります。互換性テーブルをチェックしてください。また、実験段階の機能の構文と挙動は、仕様変更に伴い各ブラウザの将来のバージョンで変更になる可能性があることに注意してください。

Push APIPushEvent インターフェースは、受け取ったプッシュメッセージを表します。このイベントは、ServiceWorkerグローバルスコープに送信されます。これは、アプリケーションサーバから PushSubscription に送信された情報を含みます。

コンストラクタ

PushEvent.PushEvent()
新しい PushEvent オブジェクトを生成する。

プロパティ

親である ExtendableEvent からプロパティを継承しています。追加プロパティ:

PushEvent.data 読取専用
PushSubscription に送信されたデータを含む PushMessageData オブジェクトへの参照を返します。

メソッド

親である ExtendableEvent からメソッドを継承しています。

次の例は、PushEvent からデータを取得して、すべての service worker クライアントで表示しています。

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');
    }
  });
});

仕様

仕様 状態 コメント
Push API
PushEvent の定義
草案 初期定義。

ブラウザ実装状況

機能 Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
基本サポート 42.0 44.0 (44.0)[1][2] 未サポート ? 未サポート
data プロパティ 未サポート 44.0 (44.0)[2] 未サポート 未サポート 未サポート
機能 Android Android Webview Firefox Mobile (Gecko) Firefox OS IE Mobile Opera Mobile Safari Mobile Chrome for Android
基本サポート 未サポート 未サポート 48.0 (48)[3] 未サポート 未サポート 未サポート 未サポート 42.0
data プロパティ 未サポート 未サポート 48.0 (48)[3] 未サポート 未サポート 未サポート 未サポート 未サポート
  • [1] 現在、Nightly/Developer Edition/Beta で既定で使用できますが、リリースチャネルでは使用できません(バグ 1208560)。
  • [2] Push(と Service Workers)は、Firefox 45 延長サポート版(ESR)では使用できません。
  • [3] Android 版 Firefox 48 から、既定で Push を使用できます。

関連項目

ドキュメントのタグと貢献者

 このページの貢献者: dskmori, YuichiNukiyama
 最終更新者: dskmori,