Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. Web APIs
  3. PushManager

PushManager

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨March 2023⁩.

* Some parts of this feature may have varying levels of support.

Secure context: This feature is available only insecure contexts (HTTPS), in some or allsupporting browsers.

Note: This feature is available inWeb Workers.

ThePushManager interface of thePush API provides a way to receive notifications from third-party servers as well as request URLs for push notifications.

This interface is accessed via theServiceWorkerRegistration.pushManager property.

Static properties

PushManager.supportedContentEncodings

Returns an array of supported content codings that can be used to encrypt the payload of a push message.

Instance methods

PushManager.getSubscription()

Retrieves an existing push subscription. It returns aPromise that resolves to aPushSubscription object containing details of an existing subscription. If no existing subscription exists, this resolves to anull value.

PushManager.permissionState()

Returns aPromise that resolves to the permission state of the currentPushManager, which will be one of'granted','denied', or'prompt'.

PushManager.subscribe()

Subscribes to a push service. It returns aPromise that resolves to aPushSubscription object containing details of a push subscription. A new push subscription is created if the current service worker does not have an existing subscription.

Deprecated methods

PushManager.hasPermission()DeprecatedNon-standard

Returns aPromise that resolves to thePushPermissionStatus of the requesting webapp, which will be one ofgranted,denied, ordefault. Replaced byPushManager.permissionState().

PushManager.register()DeprecatedNon-standard

Subscribes to a push subscription. Replaced byPushManager.subscribe().

PushManager.registrations()DeprecatedNon-standard

Retrieves existing push subscriptions. Replaced byPushManager.getSubscription().

PushManager.unregister()DeprecatedNon-standard

Unregisters and deletes a specified subscription endpoint. In the updated API, a subscription is unregistered by calling thePushSubscription.unsubscribe() method.

Example

js
this.onpush = (event) => {  console.log(event.data);  // From here we can write the data to IndexedDB, send it to any open  // windows, display a notification, etc.};navigator.serviceWorker  .register("serviceworker.js")  .then((serviceWorkerRegistration) => {    serviceWorkerRegistration.pushManager.subscribe().then(      (pushSubscription) => {        console.log(pushSubscription.endpoint);        // The push subscription details needed by the application        // server are now available, and can be sent to it using,        // for example, the fetch() API.      },      (error) => {        console.error(error);      },    );  });

Specifications

Specification
Push API
# pushmanager-interface

Browser compatibility

See also

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp