Interfejs Payment Handler API pozwala dostawcom usług płatniczych na udostępnianie sprzedawców oraz interfejs Payment Request API.
Informacje na tej stronie dotyczą tylko witryn, które korzystają z zasad Content-Security-Policy oraz Payment Request API. Jeśli nie używasz żadnego z tych rozwiązań lub używasz jednego z nich, mogą pominąć te instrukcje.
Aby sprawdzić, czy Twój dostawca usług płatniczych korzysta z interfejsu Payment Handler API, skontaktuj się z nim i postępuj zgodnie z jego instrukcjami.
Jeśli używasz interfejsu Payment Handler API i CSP (Content-Security-Policy)
lepszą ochronę, musisz upewnić się, że domeny żądań HTTP wysyłanych z
przeglądarka jest dodana do dyrektywy connect-src
w nagłówku CSP.
Jeśli na przykład Twój kod JavaScript wywołuje new
PaymentRequest([{supportedOrigins: ‘https://example.com/pay’}], details)
, to
CSP connect-src
musi zawierać https://example.com
lub
https://example.com/pay
:
Content-Security-Policy: connect-src https://example.com/pay
Jeśli https://example.com/pay
to przekierowanie z innej domeny, miejsce docelowe
punkt początkowy powinien być także uwzględniony w CSP. Na przykład, jeśli
https://example.com/pay
przekierowuje na stronę https://pay.example.com
, a potem obie
źródła muszą być uwzględnione w CSP:
Content-Security-Policy: connect-src https://example.com/pay https://pay.example.com
Wypróbuj lokalnie
Aby włączyć tę funkcję lokalnie przed jej wysyłką:
- Otwórz
chrome://flags/#web-payment-api-csp
w Chrome. - Zmiana „zasad CSP dla interfejsu Web Payment API” z „Domyślne” na „Włączone”.
- Uruchom ponownie Chrome.
Sprawdzanie adresów URL żądań
Aby sprawdzić adresy URL żądań wysłanych z interfejsu Payment Handler API:
- Włącz
chrome://flags/#web-payment-api-csp
. - Wejdź na stronę płatności i otwórz Narzędzia dla deweloperów w Chrome.
- Poszukaj komunikatów o błędach podobnych do tych:
text RangeError: Failed to construct 'PaymentRequest': https://example.com/pay payment method identifier violates Content Security Policy.
- Dodaj podany identyfikator metody do CSP.
Zdjęcie: Eduardo Soares, Unsplash