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

Payment Handler API, ödeme sağlayıcıların Payment Request API ile birlikte özel ödeme deneyimlerini satıcıların kullanımına sunmalarına olanak tanır. Ödeme İsteği API'si, new PaymentRequest() oluşturucusu aracılığıyla başlatıldığında, Ödeme İşleyici API'si için kayıtlı bir hizmet çalışanına satıcının kaynağı ve rastgele verilerle sessizce bir canmakepayment etkinliği gönderir. Bu kaynaklar arası iletişim için kullanıcı hareketi gerekmez ve herhangi bir kullanıcı arayüzü gösterilmez.

Chrome, canmakepayment etkinliğindeki tanımlayıcı alanları kaldıracak ve kaynak denemesini Chrome 108'den itibaren başlatacaktır.

Bu sayfadaki bilgiler yalnızca Ödeme İşleyici API'sini kullanan ödeme uygulaması sağlayıcıları için geçerlidir. Kullanmıyorsanı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ılacak ve hizmet çalışanı, canmakepayment etkinliğini ek bilgi olmadan alacak.

Özellik algılama

canmakepayment etkinliğinin hizmet çalışanı kodunda değiştirilip değiştirilmediğini tespit etmek için ilgili özellikleri aşağıdaki gibi 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. İşareti etkinleştirin.
  4. Chrome'u yeniden başlatın.

İşareti etkinleştirdiğinizde canmakepayment etkinliğindeki kimlik alanları (ve Android IS_READY_TO_PAY Intent) boşaltılır.

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

Değişikliği Chrome'a eklenmeden önce test amacıyla üretimde de etkinleştirebilirsiniz. Bu mekanizmaya kaynak denemesi denir.

Kaynak denemeleri, yeni özellikleri denemenize ve web standartları topluluğuna bu özelliklerin kullanılabilirliği, pratikliği ve etkinliği hakkında geri bildirim vermenize olanak tanır. Daha fazla bilgi için Web Geliştiricileri İçin Kaynak Denemeleri Kılavuzu'na bakın. Bu veya başka bir deneme sürecine kaydolmak için kayıt sayfasını ziyaret edin.

Bir kaynak denemesine kaydolmak için:

  1. Kaynağınız için jeton isteğinde bulunun.
  2. Origin-Trial HTTP üstbilgisini kullanarak jetonu hizmet çalışanı JavaScript dosyanıza ekleyin. HTTP üstbilgilerini ayarlamak için sunucunuzu yapılandırmaya erişmeniz gerekir. Elde edilen yanıt üstbilgisi şöyle görünmelidir:
Origin-Trial: Auw/tjTQ2eJQ911wiMHi1Bb7i71...

Hizmet çalışanı dosyasındaki deneme süreci jetonunu görmek için Geliştirici Araçları'nı kullanın veya curl komutunu aşağıdaki gibi girin:

$ 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ünü kullanıyorsanız canmakepayment etkinliğindeki kimlik alanları boş bırakılır. Alanları yerel olarak yeniden etkinleştirmek için şunları yapabilirsiniz:

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

Sonraki adımlar

Bu değişikliğin Chrome 111'den itibaren varsayılan olarak etkinleştirilmesi planlanmaktadır. Lansman zamanındaki değişikliğe hazırlanmak için bugün test etmeye başlayabilirsiniz.