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

ServiceWorkerRegistration インターフェースの pushManager プロパティは、プッシュサブスクリプションを管理するための PushManager インターフェースへの参照を返します; これは、サブスクライブと有効なサブスクリプションの取得、プッシュ許可状況へのアクセスのサポートを含みます。

構文

myPushManager = ServiceWorker.pushManager 

PushManager オブジェクト。

this.onpush = function(event) {
  console.log(event.data);
  // ここから、IndexedDB にデータを書き込んだり、いずれかのウィンドウに
  // それを送信したり、通知を表示したりできます。
}

navigator.serviceWorker.register('serviceworker.js').then(
  function(serviceWorkerRegistration) {
    serviceWorkerRegistration.pushManager.subscribe().then(
      function(pushSubscription) {
        console.log(pushSubscription.subscriptionId);
        console.log(pushSubscription.endpoint);
        // アプリケーションサーバが必要としているプッシュサブスクリプションの
        // 詳細はここから使用できます。たとえば、XMLHttpRequest を使用して
        // これを送信できます。
      }, function(error) {
        // 開発中は、コンソールにエラーを表示するのに役立ちます。
        // 本番環境では、アプリケーションサーバにエラー情報を送信
        // するためにも 役立ちます。
        console.log(error);
      }
    );
  });

仕様

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

ブラウザー実装状況

機能ChromeEdgeFirefoxInternet ExplorerOperaSafari
基本対応40

17

161

442 なし2711.1
機能Android webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
基本対応4040 ?442711.14.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).

関連項目

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

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