PaymentRequestEvent
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.
Hinweis: Diese Funktion ist nur in Service Workers verfügbar.
Das PaymentRequestEvent
-Interface der Payment Handler API ist das Objekt, das an einen Zahlungsabwickler übergeben wird, wenn eine PaymentRequest
erstellt wird.
Konstruktor
PaymentRequestEvent()
Experimentell-
Erzeugt eine neue Instanz des
PaymentRequestEvent
-Objekts.
Instanz-Eigenschaften
instrumentKey
Schreibgeschützt Veraltet Nicht standardisiert Experimentell-
Gibt ein Objekt zurück, das das vom Benutzer ausgewählte Zahlungsmittel widerspiegelt, oder einen leeren String, falls der Benutzer kein Zahlungsmittel registriert oder gewählt hat.
methodData
Schreibgeschützt Experimentell-
Gibt ein Array von Objekten zurück, das Bezahlmethoden-Identifikatoren für die akzeptierten Bezahlmethoden der Website und alle zugehörigen spezifischen Daten der Bezahlmethoden enthält.
modifiers
Schreibgeschützt Experimentell-
Gibt ein Array von Objekten zurück, das Änderungen an Zahlungsdetails enthält.
paymentRequestId
Schreibgeschützt Experimentell-
Gibt die ID des
PaymentRequest
-Objekts zurück. paymentRequestOrigin
Schreibgeschützt Experimentell-
Gibt den Ursprung zurück, wo das
PaymentRequest
-Objekt initialisiert wurde. topOrigin
Schreibgeschützt Experimentell-
Gibt den obersten Ursprung zurück, wo das
PaymentRequest
-Objekt initialisiert wurde. total
Schreibgeschützt Experimentell-
Gibt den insgesamt angeforderten Zahlungsbetrag zurück.
Instanz-Methoden
changePaymentMethod()
Experimentell-
Erhält einen aktualisierten Gesamtbetrag basierend auf den Details der Zahlungsmethode.
openWindow()
Experimentell-
Öffnet die angegebene URL in einem neuen Fenster, wenn und nur wenn die gegebene URL den gleichen Ursprung wie die aufrufende Seite hat. Es gibt ein
Promise
zurück, das mit einer Referenz zu einemWindowClient
aufgelöst wird. respondWith()
Experimentell-
Verhindert die Standardereignisbehandlung und ermöglicht es Ihnen, ein
Promise
für einPaymentResponse
-Objekt selbst bereitzustellen.
Beispiele
Wenn die PaymentRequest.show()
-Methode aufgerufen wird, wird ein paymentrequest
-Ereignis im Service Worker der Zahlungs-App ausgelöst. Dieses Ereignis wird im Service Worker der Zahlungs-App abgehört, um den nächsten Schritt des Zahlungsprozesses zu starten.
let payment_request_event;
let resolver;
let client;
// `self` is the global object in service worker
self.addEventListener("paymentrequest", async (e) => {
if (payment_request_event) {
// If there's an ongoing payment transaction, reject it.
resolver.reject();
}
// Preserve the event for future use
payment_request_event = e;
// ...
});
Wenn ein paymentrequest
-Ereignis empfangen wird, kann die Zahlungs-App ein Zahlungsabwicklerfenster öffnen, indem sie PaymentRequestEvent.openWindow()
aufruft. Das Zahlungsabwicklerfenster präsentiert den Kunden eine Schnittstelle der Zahlungs-App, in der sie sich authentifizieren, die Versandadresse und -optionen auswählen und die Zahlung autorisieren können.
Wenn die Zahlung abgewickelt wurde, wird PaymentRequestEvent.respondWith()
verwendet, um das Zahlungsergebnis zurück an die Händler-Website zu übermitteln.
Sehen Sie sich Empfangen eines Zahlungsanforderungsereignisses vom Händler für weitere Details zu diesem Schritt an.
Spezifikationen
Specification |
---|
Payment Handler API # the-paymentrequestevent |
Browser-Kompatibilität
BCD tables only load in the browser