Ödeme İşleyici API'sinin CanMakePayment etkinlik davranışında güncelleme

Payment Handler API, ödeme sağlayıcıların Payment Request API'nin yanı sıra satıcıların özel ödeme deneyimlerini kullanabilmesini sağlar. Payment Request API new PaymentRequest() oluşturucu aracılığıyla başlatıldığında, Payment Handler API'ye kayıtlı bir hizmet çalışanına satıcının kaynak ve rastgele verilerini içeren bir canmakepayment etkinliği sessizce tetikler. Kaynaklar arası iletişimde kullanıcı hareketi gerekmez ve herhangi bir kullanıcı arayüzü gösterilmez.

Chrome, canmakepayment etkinliğinden tanımlayıcı alanları kaldıracak ve Chrome 108'den kaynak denemesini başlatacak.

Bu sayfadaki bilgiler yalnızca Payment Handler API'yi kullanan ödeme uygulaması sağlayıcıları için geçerlidir. Kullanmadıysanız bu talimatları atlayabilirsiniz.

Neler değişiyor?

Bir satıcı new PaymentRequest() numaralı telefonu aradığında kayıtlı bir hizmet çalışanı aşağıdaki bilgileri içeren bir canmakepayment etkinliği (CanMakePaymentEvent) alır:

  • topOrigin
  • paymentRequestOrigin
  • methodData
  • modifiers

Bunlar kaldırılır ve hizmet çalışanı herhangi bir ek bilgi olmaksızın canmakepayment etkinliğini alır.

Özellik algılama

canmakepayment etkinliğinin hizmet çalışanı kodunda değiştirilip değiştirilmediğini tespit etmek için aşağıdaki gibi ilgili özellikleri inceleyin:

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

Değişikliği yerel olarak deneyin

Geliştirme amacıyla değişikliği yerel olarak etkinleştirmek için:

  1. Chrome 108, 109 veya 110'u kullanın.
  2. URL çubuğuna chrome://flags/#clear-identity-in-can-make-payment girin.
  3. İşaretlemeyi etkinleştir.
  4. Chrome'u yeniden başlatın.

İşaret etkinleştirildiğinde, canmakepayment etkinliğindeki kimlik alanları (ve Android IS_READY_TO_PAY Niyeti) boşaltılır.

Üretimde değişikliği etkinleştirme

Üretimde yapılan değişikliği, Chrome'a ulaşmadan önce test amacıyla da etkinleştirebilirsiniz. Bu mekanizmaya kaynak denemesi denir.

Kaynak denemeleri, yeni özellikleri denemenize ve kullanılabilirlik, pratiklik ve etkililik hakkında web standartları topluluğuna geri bildirimde bulunmanıza olanak tanır. Daha fazla bilgi için Web Geliştiricileri İçin Kaynak Denemeleri Kılavuzu'na bakın. Bu veya başka bir kaynak denemesine kaydolmak için kayıt sayfasını ziyaret edin.

Kaynak denemesine kaydolmak için:

  1. Kaynağınız için jeton isteyin.
  2. Origin-Trial HTTP üst bilgisi kullanarak jetonu hizmet çalışanı JavaScript dosyanıza ekleyin. HTTP üstbilgilerini ayarlamak, sunucunuzu yapılandırma erişimi gerektirir. Bunun sonucunda elde edilen yanıt başlığı aşağıdaki gibi görünmelidir:
Origin-Trial: Auw/tjTQ2eJQ911wiMHi1Bb7i71...

Hizmet çalışanı dosyasında kaynak deneme jetonunu görmek için DevTools'u veya curl komutunu aşağıdaki gibi kullanın:

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

Chrome 111'den sonra kimlik alanlarını yerel olarak yeniden etkinleştirme

Chrome 111 veya sonraki bir sürümü kullanıyorsanız canmakepayment etkinliğindeki kimlik alanları boş bırakılır. Alanları yerel olarak yeniden etkinleştirmek için aşağıdakileri yapabilirsiniz:

  1. Chrome 111 veya sonraki bir sürümü kullanın.
  2. URL çubuğuna chrome://flags/#add-identity-in-can-make-payment girin.
  3. İşaretlemeyi etkinleştir.
  4. Chrome'u yeniden başlatın.

Sonraki adımlar

Bu değişikliğin, Chrome 111'de varsayılan olarak etkinleştirilmesi planlanmaktadır. Lansmanda yapılacak değişikliğe hazırlıklı olmak için bugün teste başlayabilirsiniz.