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, bevor Sie diese produktiv verwenden.
Hinweis: Dieses Feature ist nur verfügbar in Service Workers.
Das PaymentRequestEvent
-Interface der Payment Handler API ist das Objekt, das an einen Zahlungsdienstleister übergeben wird, wenn ein PaymentRequest
erstellt wird.
Konstruktor
PaymentRequestEvent()
Experimentell-
Erstellt eine neue Instanz eines
PaymentRequestEvent
-Objekts.
Instanzeigenschaften
instrumentKey
Nur lesbar Veraltet Nicht standardisiert-
Gibt ein Objekt zurück, das das vom Benutzer ausgewählte Zahlungsinstrument widerspiegelt oder einen leeren String, wenn der Benutzer kein Zahlungsinstrument registriert oder ausgewählt hat.
methodData
Nur lesbar Experimentell-
Gibt ein Array von Objekten zurück, das Zahlungsarten-Identifikatoren für die akzeptierten Zahlungsmethoden der Website und alle zugehörigen zahlungsspezifischen Daten enthält.
modifiers
Nur lesbar Experimentell-
Gibt ein Array von Objekten zurück, das Änderungen an den Zahlungsdetails enthält.
paymentRequestId
Nur lesbar Experimentell-
Gibt die ID des
PaymentRequest
-Objekts zurück. paymentRequestOrigin
Nur lesbar Experimentell-
Gibt den Ursprung zurück, an dem das
PaymentRequest
-Objekt initialisiert wurde. topOrigin
Nur lesbar Experimentell-
Gibt den obersten Ursprung zurück, an dem das
PaymentRequest
-Objekt initialisiert wurde. total
Nur lesbar Experimentell-
Gibt den gesamten Zahlungsbetrag zurück, der angefordert wird.
Instanzmethoden
changePaymentMethod()
Experimentell-
Erhält eine aktualisierte Gesamtsumme basierend auf den Zahlungsart-Details.
openWindow()
Experimentell-
Öffnet die angegebene URL in einem neuen Fenster, wenn und nur wenn die angegebene URL denselben 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 Standard-Ereignisbehandlung und ermöglicht es Ihnen, selbst ein
Promise
für einPaymentResponse
-Objekt bereitzustellen.
Beispiele
Wenn die Methode PaymentRequest.show()
aufgerufen wird, wird ein paymentrequest
-Ereignis auf dem Service Worker der Zahlungs-App ausgelöst. Dieses Ereignis wird im Service Worker der Zahlungs-App gehört, um den nächsten Schritt des Zahlungsprozesses zu beginnen.
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 wird den Kunden eine Zahlungsschnittstelle präsentieren, in der sie sich authentifizieren, die Lieferadresse 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.
Sehen Sie Empfangen eines Zahlungsanforderungsereignisses vom Händler für weitere Details zu diesem Schritt.
Spezifikationen
Specification |
---|
Payment Handler API # the-paymentrequestevent |
Browser-Kompatibilität
BCD tables only load in the browser