これは実験的な機能です。本番で使用する前にブラウザー実装状況をチェックしてください。

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 self.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 の定義
草案 初期定義。

ブラウザー実装状況

機能ChromeEdgeFirefoxInternet ExplorerOperaSafari
基本対応42

161

17

442 3 なし37 なし
PushEvent() constructor42

161

17

442 3 なし37 なし
data57

161

17

442 3 なし44 なし
機能Android webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
基本対応 なし42 なし

44

484

37 なし4.0
PushEvent() constructor なし42 なし

44

484

37 なし4.0
data なし57 なし

44

484

44 なし4.0

1. From version 16: this feature is behind the Enable service workers preference.

2. Service workers (and Push) have been disabled in the Firefox 45 and 52 Extended Support Releases (ESR.)

3. Enabled only in Nightly, Developer Edition, and Beta channels.

4. Push enabled by default.

関連項目

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

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