ServiceWorkerGlobalScope: push イベント
Baseline
広く利用可能
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2023年3月以降、すべてのブラウザーで利用可能です。
安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。
メモ: この機能はサービスワーカー内でのみ利用可能です。
push イベントは、サービスワーカーがプッシュメッセージを受信したときにサービスワーカーのグローバルスコープ (ServiceWorkerGlobalScope インターフェイスで表現されるもの) に送られます。
このイベントはキャンセル不可で、バブリングしません。
構文
このイベント名を addEventListener() 等のメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。
js
addEventListener("push", (event) => {});
onpush = (event) => {};
イベント型
イベントプロパティ
祖先である ExtendableEvent からプロパティを継承しています。
PushEvent.data読取専用-
PushMessageDataオブジェクトへの参照を返します。これにはPushSubscriptionに送られたデータが含まれています。
例
この例では、JSON データを受け取り、解釈し、メッセージに含まれる情報に基づいて処理するためにメッセージを送出する push イベント用のハンドラーを設定します。
js
self.addEventListener(
"push",
(event) => {
let message = event.data.json();
switch (message.type) {
case "init":
doInit();
break;
case "shutdown":
doShutdown();
break;
}
},
false,
);
仕様書
| 仕様書 |
|---|
| Push API> # extensions-to-the-serviceworkerglobalscope-interface> |
| Push API> # dom-serviceworkerglobalscope-onpush> |