PublicKeyCredential: Methode getClientExtensionResults()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2021.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Die getClientExtensionResults()
-Methode der PublicKeyCredential
-Schnittstelle gibt eine Zuordnung zwischen den Kennungen der während der Erstellung oder Authentifizierung eines Zertifikats angeforderten Erweiterungen und deren Ergebnissen nach der Verarbeitung durch den Benutzeragenten zurück.
Während der Erstellung oder des Abrufens eines PublicKeyCredential
(über navigator.credentials.create()
bzw. navigator.credentials.get()
) ist es möglich, eine "benutzerdefinierte" Verarbeitung durch den Client für verschiedene Erweiterungen anzufordern, die in der extensions
-Eigenschaft der publicKey
-Option angegeben sind. Weitere Informationen zum Anfordern der verschiedenen Erweiterungen finden Sie in den Web Authentication-Erweiterungen.
Hinweis: getClientExtensionResults()
gibt nur die Ergebnisse von Erweiterungen zurück, die vom Benutzeragenten (Client) verarbeitet wurden. Die Ergebnisse von Erweiterungen, die vom Authentifikator verarbeitet wurden, finden Sie in den authenticator data, die in AuthenticatorAssertionResponse.authenticatorData
verfügbar sind.
Syntax
getClientExtensionResults()
Parameter
Keine.
Rückgabewert
Ein Map
, wobei jeder Eintrag ein Zeichenfolgen-Identifier der Erweiterung als Schlüssel enthält und das vom Client verarbeitete Ergebnis der Erweiterung als Wert.
Ausnahmen
SecurityError
DOMException
-
Die RP-Domain ist nicht gültig.
Beispiele
const publicKey = {
// Here are the extension "inputs"
extensions: {
appid: "https://accounts.example.com",
},
allowCredentials: {
id: "fgrt46jfgd...",
transports: ["usb", "nfc"],
type: "public-key",
},
challenge: new Uint8Array(16) /* from the server */,
};
navigator.credentials
.get({ publicKey })
.then((publicKeyCred) => {
const myResults = publicKeyCred.getClientExtensionResults();
// myResults will contain the output of processing the "appid" extension
})
.catch((err) => {
console.error(err);
});
Spezifikationen
Specification |
---|
Web Authentication: An API for accessing Public Key Credentials - Level 3 # ref-for-dom-publickeycredential-getclientextensionresults |
Browser-Kompatibilität
Hinweis: Erweiterungen sind optional und verschiedene Browser können verschiedene Erweiterungen erkennen. Die Verarbeitung von Erweiterungen ist für den Client stets optional: Wenn ein Browser eine bestimmte Erweiterung nicht erkennt, ignoriert er sie einfach. Informationen darüber, welche Erweiterungen von welchen Browsern unterstützt werden, finden Sie unter Web Authentication-Erweiterungen.
Siehe auch
- Die Liste der derzeit definierten Erweiterungen
AuthenticatorAssertionResponse.authenticatorData
, die das Ergebnis der Verarbeitung der Erweiterungen durch den Authentifikator enthält