PaymentRequest: merchantvalidation Ereignis
Deprecated
Avoid using this feature in new projects. This feature may be a candidate for removal from web standards or browsers.>
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Nicht standardisiert: Diese Funktion ist nicht standardisiert. Wir raten davon ab, nicht-standardisierte Funktionen auf produktiven Webseiten zu verwenden, da sie nur von bestimmten Browsern unterstützt werden und sich in Zukunft ändern oder entfernt werden können. Unter Umständen kann sie jedoch eine geeignete Option sein, wenn es keine standardisierte Alternative gibt.
merchantvalidation Ereignisse werden vom Payment Request API an ein PaymentRequest Objekt übermittelt, wenn ein Zahlungsanbieter verlangt, dass der Händler, der den Kauf anfordert, sich als berechtigt zur Nutzung des Zahlungsanbieters validiert.
Erfahren Sie, wie der Händler-Validierungsprozess funktioniert.
Dieses Ereignis kann nicht abgebrochen werden und wird nicht propagiert.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener() oder setzen Sie eine Ereignis-Handler-Eigenschaft.
addEventListener("merchantvalidation", (event) => { })
onmerchantvalidation = (event) => { }
Ereignistyp
Ein MerchantValidationEvent. Erbt von Event.
Beispiele
In diesem Beispiel wird ein Ereignishandler für das merchantvalidation Ereignis eingerichtet. Er verwendet fetch(), um eine Anfrage an seinen eigenen Server mit einem Argument der Validierungs-URL der Zahlungsmethode zu senden, die aus der validationURL Eigenschaft des Ereignisses abgerufen wird. Der Händler-Server sollte die Validierungs-URL gemäß der Dokumentation der Zahlungsmethode aufrufen. Typischerweise sollte ein Client nicht auf die Validierungs-URL zugreifen.
request.addEventListener("merchantvalidation", (event) => {
event.complete(async () => {
const merchantServerUrl = `${
window.location.origin
}/validate?url=${encodeURIComponent(event.validationURL)}`;
// get validation data, and complete validation;
return await fetch(merchantServerUrl).then((response) => response.text());
}, false);
});
const response = await request.show();
Wie der Händler-Server die Validierung behandelt, hängt von der Implementierung des Servers und der Dokumentation der Zahlungsmethode ab. Der vom Validierungsserver bereitgestellte Inhalt wird an den Händler-Server weitergeleitet und dann im Erfolgs-Handler des fetch() Aufrufs an die complete() Methode des Ereignisses zurückgegeben. Diese Antwort informiert den Zahlungsanbieter darüber, ob der Händler validiert ist.
Sie können auch die onmerchantvalidation Ereignis-Handler-Eigenschaft verwenden, um den Handler für dieses Ereignis einzurichten:
request.onmerchantvalidation = (event) => {
event.complete(async () => {
const merchantServerUrl = `${
window.location.origin
}/validate?url=${encodeURIComponent(event.validationURL)}`;
// get validation data, and complete validation;
return await fetch(merchantServerUrl).then((response) => response.text());
});
};
const response = await request.show();
Für weitere Informationen siehe Händler-Validierung.
Browser-Kompatibilität
Siehe auch
- Payment Request API
- Verwendung des Payment Request API
onmerchantvalidationEreignis-Handler-Eigenschaft- Händler-Validierung
paymentmethodchangeEreignisshippingaddresschangeEreignisshippingoptionchangeEreignis