ServiceWorkerGlobalScope: paymentrequest Event
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.
Hinweis: Diese Funktion ist nur in Service Workers verfügbar.
Das paymentrequest
-Ereignis der ServiceWorkerGlobalScope
-Schnittstelle wird in einer Zahlungs-App ausgelöst, wenn ein Zahlungsfluss auf der Händler-Website über die Methode PaymentRequest.show()
initiiert wurde.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener()
oder setzen Sie eine Ereignis-Handler-Eigenschaft.
addEventListener("paymentrequest", (event) => { })
onpaymentrequest = (event) => { }
Ereignistyp
Ein PaymentRequestEvent
. Erbt von ExtendableEvent
.
Beispiele
Wenn die Methode PaymentRequest.show()
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 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 Zahlungsfenster öffnen, indem sie PaymentRequestEvent.openWindow()
aufruft. Das Zahlungsfenster zeigt den Kunden eine Zahlungs-App-Oberfläche, in der sie sich authentifizieren, eine 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 diesem Schritt.
Spezifikationen
Specification |
---|
Payment Handler API # the-paymentrequestevent |