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 Zahlungshandler übergeben wird, wenn ein PaymentRequest
gemacht wird.
Konstruktor
PaymentRequestEvent()
Experimentell-
Erstellt eine neue Instanz des
PaymentRequestEvent
-Objekts.
Instanz-Eigenschaften
instrumentKey
Schreibgeschützt Veraltet Nicht standardisiert-
Gibt ein Objekt zurück, das das vom Benutzer ausgewählte Zahlungsmittel widerspiegelt, oder ein leerer String, falls der Benutzer kein Zahlungsmittel registriert oder ausgewählt hat.
methodData
Schreibgeschützt Experimentell-
Gibt ein Array von Objekten zurück, das Zahlungssystemkennungen für die von der Website akzeptierten Zahlungsmethoden und alle zugehörigen spezifischen Zahlungsdaten enthält.
modifiers
Schreibgeschützt Experimentell-
Gibt ein Array von Objekten zurück, das Änderungen an den Zahlungsdetails enthält.
paymentRequestId
Schreibgeschützt Experimentell-
Gibt die ID des
PaymentRequest
-Objekts zurück. paymentRequestOrigin
Schreibgeschützt Experimentell-
Gibt den Ursprung zurück, an dem das
PaymentRequest
-Objekt initialisiert wurde. topOrigin
Schreibgeschützt Experimentell-
Gibt den obersten Ursprung zurück, an dem das
PaymentRequest
-Objekt initialisiert wurde. total
Schreibgeschützt Experimentell-
Gibt den Gesamtbetrag zurück, der zur Zahlung angefordert wird.
Instanz-Methoden
changePaymentMethod()
Experimentell-
Erhält eine aktualisierte Gesamtsumme, basierend auf den Details der Zahlungsmethode.
openWindow()
Experimentell-
Öffnet die angegebene URL in einem neuen Fenster, nur wenn die gegebene URL denselben Ursprung wie die aufrufende Seite hat. Es gibt ein
Promise
zurück, das mit einem Verweis auf einenWindowClient
aufgelöst wird. respondWith()
Experimentell-
Verhindert die Standardverarbeitung des Ereignisses und ermöglicht es Ihnen, selbst ein
Promise
für einPaymentResponse
-Objekt bereitzustellen.
Beispiele
Wenn die PaymentRequest.show()
-Methode aufgerufen wird, wird ein paymentrequest
-Ereignis im Service-Worker der Zahlungs-App ausgelöst. Dieses Ereignis wird innerhalb des Service-Workers der Zahlungs-App überwacht, um die nächste Phase des Zahlungsvorgangs zu initiieren.
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 Zahlungsfenster öffnen, indem sie PaymentRequestEvent.openWindow()
aufruft. Das Zahlungsfenster bietet 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 an die Händler-Website zurückzugeben.
Siehe Empfangen eines Zahlungsanforderungsereignisses vom Händler für weitere Details zu dieser Phase.
Spezifikationen
Specification |
---|
Payment Handler API # the-paymentrequestevent |