PushSubscription: getKey() Methode
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since März 2023.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die getKey()-Methode der PushSubscription-Schnittstelle gibt einen ArrayBuffer zurück, der einen öffentlichen Client-Schlüssel darstellt. Dieser kann dann an einen Server gesendet werden und zur Verschlüsselung von Push-Nachrichtendaten verwendet werden.
Syntax
getKey(name) Parameter
name-
Ein String, der die Verschlüsselungsmethode repräsentiert, die zur Generierung eines Client-Schlüssels verwendet wird. Der Wert kann sein:
p256dh-
Ein Elliptic curve Diffie–Hellman öffentlicher Schlüssel auf der P-256-Kurve (das heißt, der NIST secp256r1 elliptische Kurve). Der resultierende Schlüssel ist ein unkomprimierter Punkt im ANSI X9.62-Format.
auth-
Ein Authentifizierungsgeheimnis, wie in Message Encryption for Web Push beschrieben.
Rückgabewert
Ein ArrayBuffer oder null, wenn kein öffentlicher Schlüssel gefunden werden kann.
Beispiele
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"); // … }); Spezifikationen
| Specification |
|---|
| Push API> # dom-pushsubscription-getkey> |