PublicKeyCredential: isConditionalMediationAvailable() statische Methode

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Die statische Methode isConditionalMediationAvailable() der Schnittstelle PublicKeyCredential gibt ein Promise zurück, das sich auf true auflöst, wenn bedingte Vermittlung verfügbar ist.

Syntax

js
PublicKeyCredential.isConditionalMediationAvailable()

Parameter

Keine.

Rückgabewert

Ein Promise, das sich auf einen booleschen Wert auflöst, der anzeigt, ob die bedingte Vermittlung verfügbar ist oder nicht.

Ausnahmen

Das zurückgegebene Promise kann mit den folgenden Werten abgelehnt werden:

SecurityError DOMException

Die RP-Domäne ist nicht gültig.

Beispiele

Bevor Sie einen bedingten WebAuthn-API-Aufruf tätigen, prüfen Sie, ob:

  • Der Browser die Web Authentication API unterstützt.
  • Der Browser das WebAuthn-Bedingte UI unterstützt.
js
// Availability of `window.PublicKeyCredential` means WebAuthn is usable.
if (
  window.PublicKeyCredential &&
  PublicKeyCredential.isConditionalMediationAvailable
) {
  // Check if conditional mediation is available.
  const isCMA = await PublicKeyCredential.isConditionalMediationAvailable();
  if (isCMA) {
    // Call WebAuthn authentication
    const publicKeyCredentialRequestOptions = {
      // Server generated challenge
      challenge: ****,
      // The same RP ID as used during registration
      rpId: "example.com",
    };

    const credential = await navigator.credentials.get({
      publicKey: publicKeyCredentialRequestOptions,
      signal: abortController.signal,
      // Specify 'conditional' to activate conditional UI
      mediation: "conditional",
    });
  }
}

Hinweis: Weitere Informationen zur Verwendung der bedingten Vermittlung finden Sie unter Sign in with a passkey through form autofill.

Spezifikationen

Specification
Web Authentication: An API for accessing Public Key Credentials - Level 3
# dom-publickeycredential-isconditionalmediationavailable

Browser-Kompatibilität

BCD tables only load in the browser