ServiceWorkerGlobalScope: paymentrequest Ereignis
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 Zahlungsprozess 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 die nächste Phase des Zahlungsprozesses zu starten.
let paymentRequestEvent;
let resolver;
let client;
// `self` is the global object in service worker
self.addEventListener("paymentrequest", async (e) => {
if (paymentRequestEvent) {
// If there's an ongoing payment transaction, reject it.
resolver.reject();
}
// Preserve the event for future use
paymentRequestEvent = e;
// …
});
Wenn ein paymentrequest Ereignis empfangen wird, kann die Zahlungs-App ein Zahlungsfenster öffnen, indem sie PaymentRequestEvent.openWindow() aufruft. Das Zahlungsfenster wird den Kunden eine Schnittstelle der Zahlungs-App präsentieren, in der sie sich authentifizieren, die Lieferadresse und Optionen auswählen und die Zahlung autorisieren können.
Nachdem die Zahlung abgewickelt wurde, wird PaymentRequestEvent.respondWith() verwendet, um das Zahlungsergebnis zurück an die Händler-Website zu übermitteln.
Weitere Details zu diesem Abschnitt finden Sie unter Zahlungsanfrage-Ereignis vom Händler empfangen.
Spezifikationen
| Specification |
|---|
| Payment Handler API> # the-paymentrequestevent> |