تعديل على سلوك حدث CanMakePayment في واجهة برمجة التطبيقات Payment Handler API

تتيح Payment Handler API لموفّري خدمات الدفع إتاحة تجربة الدفع المخصّصة للتجّار، إلى جانب Payment Request API. عند بدء واجهة برمجة التطبيقات Payment Request API من خلال new PaymentRequest()، يتم تشغيل حدث canmakepayment بدون إشعار مع مصدر التاجر وبيانات عشوائية لعامل الخدمة المسجَّل لواجهة برمجة التطبيقات Payment Handler API. ولا يتطلّب هذا التواصل بين المواقع الإلكترونية المختلفة إيماءة من المستخدم، ولا يُظهر أي واجهة مستخدم.

سيزيل Chrome الحقول التعريفية من حدث canmakepayment ويبدأ في مرحلة التجربة والتقييم من Chrome 108.

لا تنطبق المعلومات الواردة في هذه الصفحة إلا على موفّري تطبيقات الدفع الذين يستخدِمون واجهة برمجة التطبيقات Payment Handler API. إذا لم تكن تستخدم هذا الإصدار، يمكنك تخطّي هذه التعليمات.

ما الذي سيتغيّر؟

عندما يتصل التاجر بخدمة new PaymentRequest()، يتلقّى عامل الخدمة المسجّل حدث canmakepayment (CanMakePaymentEvent) الذي يحتوي على المعلومات التالية:

  • topOrigin
  • paymentRequestOrigin
  • methodData
  • modifiers

ستتم إزالة هذه الأحداث وسيتلقّى عامل الخدمة ببساطة حدث canmakepayment بدون أي معلومات إضافية.

رصد الميزات

لرصد ما إذا تم تغيير الحدث canmakepayment في رمز worker الخدمة، راجِع السمات ذات الصلة على النحو التالي:

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

تجربة التغيير على الجهاز

لتفعيل التغيير محليًا لأغراض التطوير:

  1. استخدِم الإصدار 108 أو 109 أو 110 من Chrome.
  2. أدخِل chrome://flags/#clear-identity-in-can-make-payment في شريط عنوان URL.
  3. فعِّل الميزة التجريبية.
  4. يُرجى إعادة تشغيل Chrome.

من خلال تفعيل العلامة، سيتم إفراغ حقول الهوية في حدث canmakepaymentIntent IS_READY_TO_PAY في Android).

تفعيل التغيير في قناة الإصدار العلني

يمكنك أيضًا تفعيل التغيير في الإصدار العلني لأغراض الاختبار قبل أن يتم طرحه في Chrome. تُعرف هذه الآلية باسم "الإصدار التجريبي من المصدر".

تتيح لك مراحل التجربة والتقييم تجربة ميزات جديدة وتقديم ملاحظات بشأن سهولة استخدامها وفعاليتها ومدى ملاءمتها لمجتمع معايير الويب. لمزيد من المعلومات، يمكنك الاطّلاع على دليل تجارب الإصدارات العلنية لمطوّري الويب. للاشتراك في هذه الفترة التجريبية أو فترة تجريبية أخرى من المصدر، يُرجى الانتقال إلى صفحة التسجيل.

لتسجيل نسخة تجريبية من المصدر:

  1. اطلب الحصول على رمز مميّز للموقع المصدر.
  2. أضِف الرمز المميّز إلى ملف JavaScript لمشغّل الخدمات باستخدام عنوان HTTP يتضمّن العنصر Origin-Trial. يتطلب ضبط رؤوس HTTP الوصول إلى إعدادات خادمك. يجب أن يظهر عنوان الاستجابة الناتج على النحو التالي:
Origin-Trial: Auw/tjTQ2eJQ911wiMHi1Bb7i71...

للاطّلاع على رمز مفتاح الإصدار التجريبي الأصلي في ملف الخدمة العاملة، استخدِم أدوات المطوّرين أو الأمر curl على النحو التالي:

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

إعادة تفعيل حقول الهوية على الجهاز بعد الإصدار 111 من Chrome

إذا كنت تستخدم الإصدار 111 من Chrome أو إصدارًا أحدث، تُرك حقول الهوية في حدث canmakepayment فارغة. لإعادة تفعيل الحقول محليًا، يمكنك إجراء ما يلي:

  1. استخدِم الإصدار 111 من Chrome أو إصدارًا أحدث.
  2. أدخِل chrome://flags/#add-identity-in-can-make-payment في شريط عنوان URL.
  3. فعِّل الميزة التجريبية.
  4. يُرجى إعادة تشغيل Chrome.

الخطوات التالية

تم التخطيط لتفعيل هذا التغيير تلقائيًا من الإصدار 111 من Chrome. يمكنك بدء الاختبار اليوم للاستعداد للتغيير في وقت الإطلاق.