ServiceWorkerGlobalScope: push イベント

push イベントは、サービスワーカーがプッシュメッセージを受信したときにサービスワーカーのグローバルスコープ (ServiceWorkerGlobalScope インターフェイスで表現されるもの) に送られます。

このイベントはキャンセル不可で、バブリングしません。

構文

このイベント名を addEventListener() 等のメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。

addEventListener('push', (event) => { });

onpush = (event) => { };

イベント型

PushEvent です。 Event を継承しています。

Event ExtendableEvent PushEvent

イベントプロパティ

祖先である ExtendableEvent からプロパティを継承しています

PushEvent.data 読取専用

PushMessageData オブジェクトへの参照を返します。これには PushSubscription に送られたデータが含まれています。

この例では、JSON データを受け取り、解釈し、メッセージに含まれる情報に基づいて処理するためにメッセージを送出する push イベント用のハンドラーを設定します。

self.addEventListener("push", (event) => {
  let message = event.data.json();

  switch(message.type) {
    case "init":
      doInit();
      break;
    case "shutdown":
      doShutdown();
      break;
  }
}, false);

仕様書

Specification
Push API
# extensions-to-the-serviceworkerglobalscope-interface
Push API
# dom-serviceworkerglobalscope-onpush

ブラウザーの互換性

BCD tables only load in the browser

関連情報