Aggiornamento del comportamento dell'evento CanMakePayment dell'API Payment Handler

L'API Payment Gestori consente ai fornitori di servizi di pagamento di rendere disponibile la propria esperienza di pagamento personalizzata oltre all'API Payment Request. Quando l'API Payment Request viene inizializzata tramite la il costruttore new PaymentRequest(), attiva automaticamente un evento canmakepayment con l'origine del commerciante e i dati arbitrari un service worker registrato per l'API Payment Gestori. Questa comunicazione multiorigine non richiede un gesto dell'utente e non mostrare qualsiasi interfaccia utente.

Chrome rimuoverà i campi identificativi dall'evento canmakepayment e avvia la prova dell'origine da Chrome 108.

Le informazioni riportate in questa pagina riguardano soltanto i fornitori di app di pagamento che utilizzano l'API Payment Gestori. Se non la utilizzi, puoi saltare queste istruzioni.

Cosa cambierà?

Quando un commerciante chiama new PaymentRequest(), un service worker registrato riceve un evento canmakepayment (CanMakePaymentEvent) che contiene le seguenti informazioni:

  • topOrigin
  • paymentRequestOrigin
  • methodData
  • modifiers

Verranno rimossi e il service worker riceverà semplicemente canmakepayment evento senza informazioni aggiuntive.

Rilevamento delle caratteristiche

Per rilevare se l'evento canmakepayment è stato modificato nel service worker del codice, esamina le rispettive proprietà in questo modo:

self.addEventListener(e => {
  if (e.paymentRequestOrigin) {...}
  if (e.topOrigin) {...}
  if (e.methodData && e.methodData.length > 0) {...}
  if (e.modifiers && e.modifiers.length > 0) {...}
  ...
});

Prova la modifica localmente

Per abilitare la modifica localmente ai fini dello sviluppo:

  1. Utilizza Chrome 108, 109 o 110.
  2. Inserisci chrome://flags/#clear-identity-in-can-make-payment nella barra dell'URL.
  3. Attiva il flag.
  4. Riavvia Chrome.

Se attivi il flag, i campi riguardanti l'identità nell'evento canmakepayment verranno svuotato (e l'intent IS_READY_TO_PAY di Android).

Abilita la modifica in produzione

Puoi anche abilitare la modifica in produzione a scopo di test prima che venga arriva in Chrome. Questo meccanismo è chiamato prova dell'origine.

Origin trials consente di provare nuove funzionalità e dare feedback usabilità, praticità ed efficacia per la community degli standard web. Per per ulteriori informazioni, consulta la Guida alle prove dell'origine per sviluppatori web. Per registrarti a questa o a un'altra prova dell'origine, visita la pagina di registrazione.

Per registrare una prova dell'origine:

  1. Richiedere un token per la tua origine.
  2. Aggiungi il token al file JavaScript del service worker utilizzando un Origin-Trial Intestazione HTTP. L'impostazione delle intestazioni HTTP richiede l'accesso per la configurazione del server. L'intestazione della risposta risultante dovrebbe avere un aspetto simile al seguente:
Origin-Trial: Auw/tjTQ2eJQ911wiMHi1Bb7i71...

Per vedere il token di prova dell'origine sul file del service worker, usa i DevTools o il comando curl in questo modo:

$ curl --head <Service Worker JS file URL> | grep -i origin-trial
origin-trial: Auw/tjTQ2eJQ911wiMHi1Bb7i71...

Riattivare i campi riguardanti l'identità localmente dopo la versione 111 di Chrome

Se utilizzi Chrome 111 o versioni successive, i campi relativi all'identità nella canmakepayment evento è stato lasciato vuoto. Per riattivare il in locale, puoi:

  1. Utilizza Chrome 111 o versioni successive.
  2. Inserisci chrome://flags/#add-identity-in-can-make-payment nella barra dell'URL.
  3. Attiva il flag.
  4. Riavvia Chrome.

Passaggi successivi

È prevista l'attivazione di questa modifica a partire da Chrome 111 per impostazione predefinita. Puoi iniziare a testare oggi stesso per prepararti per la modifica in tempo per il lancio.