PushSubscription
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The PushSubscription
interface of the Push API provides a subscription's URL endpoint and allows unsubscribing from a push service.
An instance of this interface can be serialized.
Properties
PushSubscription.endpoint
Read only-
A
USVString
containing the endpoint associated with the push subscription. PushSubscription.expirationTime
Read only-
A
DOMHighResTimeStamp
of the subscription expiration time associated with the push subscription, if there is one, or null otherwise. PushSubscription.options
Read only-
An object containing the options used to create the subscription.
PushSubscription.subscriptionId
Read only-
A
DOMString
containing the subscription ID associated with the push subscription.
Methods
PushSubscription.getKey()
-
Returns an
ArrayBuffer
which contains the client's public key, which can then be sent to a server and used in encrypting push message data. PushSubscription.toJSON()
-
Standard serializer — returns a JSON representation of the subscription properties.
PushSubscription.unsubscribe()
-
Starts the asynchronous process of unsubscribing from the push service, returning a
Promise
that resolves to a boolean value when the current subscription is successfully unregistered.
Example
navigator.serviceWorker.ready.then(function(reg) {
reg.pushManager.getSubscription().then(function(subscription) {
subscription.unsubscribe().then(function(successful) {
// You've successfully unsubscribed
}).catch(function(e) {
// Unsubscribing failed
})
})
});
Specifications
Specification |
---|
Push API # pushsubscription-interface |
Browser compatibility
BCD tables only load in the browser