PaymentResponse: Methode toJSON()
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Want more browser support for this feature? Tell us why.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Die Methode toJSON() der Schnittstelle PaymentResponse gibt ein JSON-serialisierbares, einfaches Objekt zurück, das das PaymentResponse-Objekt repräsentiert.
Die Methode wird automatisch von JSON.stringify() aufgerufen, wenn bei der JSON-Serialisierung ein PaymentResponse-Objekt verarbeitet wird.
Syntax
toJSON()
Parameter
Keine.
Rückgabewert
Ein JSON-serialisierbares, einfaches Objekt mit den folgenden Eigenschaften:
Der Wert jeder Eigenschaft wird unverändert übernommen. Wenn das zurückgegebene Objekt an JSON.stringify() übergeben wird, wird die Eigenschaft shippingAddress zusätzlich mithilfe von PaymentAddress.toJSON() serialisiert, sofern sie nicht null ist.
Beispiele
>toJSON() direkt aufrufen
In diesem Beispiel wird ein PaymentResponse-Objekt abgerufen. Ein direkter Aufruf von toJSON() gibt ein einfaches Objekt zurück. Dessen Eigenschaften haben dieselben Werte wie die entsprechenden Eigenschaften des ursprünglichen Objekts.
payment.show().then((paymentResponse) => {
const json = paymentResponse.toJSON();
console.log(json); // A plain object
console.log(typeof json); // "object"
console.log(json.methodName); // Same value as paymentResponse.methodName
});
In einen JSON-String serialisieren
Innerhalb der Callback-Funktion aus dem vorherigen Beispiel kann dasselbe Objekt mit JSON.stringify() serialisiert werden. Dabei wird die Methode toJSON() automatisch aufgerufen.
console.log(JSON.stringify(paymentResponse));
Dadurch würde ein JSON-String wie der folgende ausgegeben (zur besseren Lesbarkeit formatiert):
{
"requestId": "checkout-123",
"methodName": "https://example.com/pay",
"details": {
"transactionId": "12345"
},
"shippingAddress": null,
"shippingOption": null,
"payerName": null,
"payerEmail": null,
"payerPhone": null
}
Spezifikationen
| Spezifikation |
|---|
| Web IDL> # default-tojson-steps> |