The getKey()
method of the PushSubscription
interface returns an ArrayBuffer
representing a client public key, which can then be sent to a server and used in encrypting push message data.
The getKey()
method of the PushSubscription
interface returns an ArrayBuffer
representing a client public key, which can then be sent to a server and used in encrypting push message data.
js
getKey(name)
name
A string representing the encryption method used to generate a client key. The value can be:
p256dh
An Elliptic curve Diffie–Hellman public key on the P-256 curve (that is, the NIST secp256r1 elliptic curve). The resulting key is an uncompressed point in ANSI X9.62 format.
auth
An authentication secret, as described in Message Encryption for Web Push.
An ArrayBuffer
or null
if no public key can be found.
js
reg.pushManager.getSubscription().then((subscription) => { // Enable any UI which subscribes / unsubscribes from // push messages. subBtn.disabled = false; if (!subscription) { console.log("Not yet subscribed to Push"); // We aren't subscribed to push, so set UI // to allow the user to enable push return; } // Set your UI to show they have subscribed for // push messages subBtn.textContent = "Unsubscribe from Push Messaging"; isPushEnabled = true; // initialize status, which includes setting UI elements for subscribed status // and updating Subscribers list via push const endpoint = subscription.endpoint; const key = subscription.getKey("p256dh"); const auth = subscription.getKey("auth"); // ... });
Specification |
---|
Push API # dom-pushsubscription-getkey |
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
getKey |
42 | 17 | 44 | No | 29 | 16Supported on macOS 13 and later |
No | 42 | 48 | 29 | 16.4 | 4.0 |
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PushSubscription/getKey