ServiceWorkerGlobalScope: canmakepayment-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 canmakepayment
-Ereignis des ServiceWorkerGlobalScope
-Interfaces wird im Service Worker einer Zahlungs-App ausgelöst, um zu überprüfen, ob sie bereit ist, eine Zahlung zu bearbeiten. Genauer gesagt wird es ausgelöst, wenn die Händler-Website den PaymentRequest()
-Konstruktor aufruft.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener()
oder setzen Sie eine Ereignishandler-Eigenschaft.
addEventListener("canmakepayment", (event) => {});
oncanmakepayment = (event) => {};
Ereignistyp
Ein CanMakePaymentEvent
. Erbt von ExtendableEvent
.
Beispiele
Das canmakepayment
-Ereignis wird im Service Worker einer Zahlungs-App ausgelöst, um zu überprüfen, ob sie bereit ist, eine Zahlung zu bearbeiten. Genauer gesagt wird es ausgelöst, wenn die Händler-Website den PaymentRequest()
-Konstruktor aufruft. Der Service Worker kann dann die Methode CanMakePaymentEvent.respondWith()
verwenden, um entsprechend zu antworten:
self.addEventListener("canmakepayment", (e) => {
e.respondWith(
new Promise((resolve, reject) => {
someAppSpecificLogic()
.then((result) => {
resolve(result);
})
.catch((error) => {
reject(error);
});
}),
);
});
respondWith()
gibt ein Promise
zurück, das mit einem booleschen Wert aufgelöst wird, um anzuzeigen, dass der Service Worker bereit ist, eine Zahlungsanfrage zu bearbeiten (true
) oder nicht (false
).
Spezifikationen
Specification |
---|
Payment Handler API # the-canmakepaymentevent |
Browser-Kompatibilität
BCD tables only load in the browser