PaymentManager: enableDelegations() Methode

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

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

Die enableDelegations() Methode der PaymentManager Schnittstelle delegiert die Verantwortung für die Bereitstellung verschiedener Teile der benötigten Zahlungsinformationen an die Zahlungs-App, anstatt diese vom Browser zu sammeln (zum Beispiel über die automatische Vervollständigung).

Wenn beispielsweise die requestShipping-Option im Optionsobjekt auf true gesetzt ist, wenn der PaymentRequest() Konstruktor aufgerufen wird, wird eine Versandadresse zurückgegeben.

  • Wenn enableDelegations() verwendet wurde, um shippingAddress zu delegieren, kommt diese Adresse von der Zahlungs-App.
  • Andernfalls kommt sie aus der automatischen Vervollständigung des Browsers.

Syntax

js
enableDelegations(delegations)

Parameter

delegations Optional

Ein Array, das einen oder mehrere enumerierte Werte enthält, die angeben, welche Zahlungsinformationen Sie an die Zahlungs-App delegieren möchten. Mögliche Werte können sein:

payerEmail

Die Zahlungs-App wird die E-Mail des Zahlenden bereitstellen, wann immer sie benötigt wird.

payerName

Die Zahlungs-App wird den Namen des Zahlenden bereitstellen, wann immer er benötigt wird.

payerPhone

Die Zahlungs-App wird die Telefonnummer des Zahlenden bereitstellen, wann immer sie benötigt wird.

shippingAddress

Die Zahlungs-App wird die Versandadresse bereitstellen, wann immer sie benötigt wird.

Rückgabewert

Ein Promise, das mit einem Wert von undefined aufgelöst wird.

Beispiele

js
navigator.serviceWorker.register("serviceworker.js").then((registration) => {
  registration.paymentManager.userHint = "Card number should be 16 digits";

  registration.paymentManager
    .enableDelegations(["shippingAddress", "payerName"])
    .then(() => {
      // ...
    });

  // ...
});

Spezifikationen

Specification
Payment Handler API
# dom-paymentmanager-enabledelegations

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
enableDelegations
Experimental

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
Experimental. Expect behavior to change in the future.

Siehe auch