PushManager: getSubscription() method
The PushManager.getSubscription()
method of the PushManager
interface retrieves an existing push subscription.
It returns a Promise
that resolves to a PushSubscription
object containing details of an existing subscription. If no existing subscription exists, this resolves to a null
value.
Syntax
Parameters
Return value
A Promise
that resolves to a PushSubscription
object or null
.
Examples
This code snippet is taken from a push messaging and notification sample. (No live demo is available.)
navigator.serviceWorker.ready.then((serviceWorkerRegistration) => {
serviceWorkerRegistration.pushManager
.getSubscription()
.then((subscription) => {
const pushButton = document.querySelector(".js-push-button");
pushButton.disabled = false;
if (!subscription) {
return;
}
sendSubscriptionToServer(subscription);
showCurlCommand(subscription);
pushButton.textContent = "Disable Push Messages";
isPushEnabled = true;
})
.catch((err) => {
console.error(`Error during getSubscription(): ${err}`);
});
});
Specifications
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
getSubscription |
42 |
17 |
44 |
No |
29 |
16Supported on macOS 13 and later |
No |
42 |
48 |
29 |
16.4 |
4.0 |