--- title: ServiceWorkerRegistration.pushManager slug: Web/API/ServiceWorkerRegistration/pushManager tags: - API - Property - Push - PushManager - Reference - Service Workers - ServiceWorkerRegistration translation_of: Web/API/ServiceWorkerRegistration/pushManager ---
{{domxref("ServiceWorkerRegistration")}} インターフェイスの pushManager プロパティは、プッシュ購読を管理するための {{domxref("PushManager")}} インターフェイスへの参照を返します。 これには、購読申し込み、アクティブな購読の取得、プッシュ許可状況へのアクセスのサポートが含まれます。
var pushManager = serviceWorkerRegistration.pushManager;
{{domxref("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);
}
);
});
| 仕様 | 状態 | コメント |
|---|---|---|
| {{SpecName('Push API', '#pushmanager-interface', 'PushManager')}} | {{Spec2('Push API')}} | 初期定義。 |
{{Compat("api.ServiceWorkerRegistration.pushManager")}}