การอัปเดตลักษณะการทํางานของเหตุการณ์ CanMakePayment ของ Payment Handler API

Payment Handler API ช่วยให้ผู้ให้บริการชำระเงินสามารถมอบประสบการณ์การชำระเงินที่กำหนดเอง ผู้ขาย รวมถึง Payment Request API เมื่อ Payment Request API เริ่มต้นผ่าน เครื่องมือสร้าง new PaymentRequest() ทำให้เหตุการณ์ canmakepayment เริ่มทำงานโดยไม่มีการแจ้งเตือนด้วย ต้นทางของผู้ขายและข้อมูลที่กําหนดเองเพื่อ Service Worker ที่ลงทะเบียนสำหรับ Payment Handler API การสื่อสารข้ามต้นทางนี้ไม่ต้องใช้ท่าทางสัมผัสของผู้ใช้และไม่ แสดงอินเทอร์เฟซผู้ใช้

Chrome จะนำช่องที่ระบุออกจากเหตุการณ์ canmakepayment และเริ่มช่วงทดลองใช้จากต้นทางจาก Chrome 108

ข้อมูลในหน้านี้ใช้กับผู้ให้บริการแอปชำระเงินที่ใช้ Payment Handler API หากไม่ได้ใช้ ให้ข้ามวิธีการเหล่านี้

สิ่งที่เปลี่ยนแปลงไป

เมื่อผู้ขายโทรหา new PaymentRequest() ซึ่งเป็น Service Worker ที่ลงทะเบียนไว้ ได้รับเหตุการณ์ canmakepayment (CanMakePaymentEvent) ที่มีข้อมูลต่อไปนี้

  • topOrigin
  • paymentRequestOrigin
  • methodData
  • modifiers

ระบบจะนำรายการเหล่านี้ออก และ Service Worker ก็จะได้รับ canmakepayment กิจกรรมที่ไม่มีข้อมูลเพิ่มเติม

การตรวจหาฟีเจอร์

เพื่อตรวจหาว่าเหตุการณ์ canmakepayment มีการเปลี่ยนแปลงใน Service 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. ใช้ Chrome 108, 109 หรือ 110
  2. ป้อน chrome://flags/#clear-identity-in-can-make-payment ในแถบ URL
  3. เปิดใช้การตั้งค่าสถานะ
  4. เปิด Chrome อีกครั้ง

เมื่อเปิดใช้การตั้งค่าสถานะ ช่องข้อมูลประจำตัวในเหตุการณ์ canmakepayment จะ ล้างออก (และ Android IS_READY_TO_PAY Intent)

เปิดใช้การเปลี่ยนแปลงในเวอร์ชันที่ใช้งานจริง

นอกจากนี้ คุณยังสามารถเปิดใช้การเปลี่ยนแปลงในเวอร์ชันที่ใช้งานจริงเพื่อวัตถุประสงค์ในการทดสอบก่อนที่จะดำเนินการดังกล่าว เข้าสู่ Chrome จริงๆ กลไกนี้เรียกว่าช่วงทดลองใช้จากต้นทาง

ช่วงทดลองใช้จากต้นทางช่วยให้คุณได้ลองใช้ฟีเจอร์ใหม่ๆ และแสดงความคิดเห็นเกี่ยวกับ ความสามารถในการใช้งาน การนำไปปฏิบัติได้จริง และประสิทธิภาพของชุมชนมาตรฐานเว็บ สำหรับ ดูข้อมูลเพิ่มเติมได้ที่คู่มือช่วงทดลองใช้จากต้นทางสำหรับนักพัฒนาเว็บ หากต้องการลงชื่อสมัครใช้ช่วงทดลองใช้จากต้นทางนี้หรือเวอร์ชันอื่น ให้ไปที่หน้าการลงทะเบียน

วิธีลงทะเบียนช่วงทดลองใช้จากต้นทาง

  1. ขอโทเค็น ต้นทางของคุณ
  2. เพิ่มโทเค็นลงในไฟล์ JavaScript ของ Service Worker โดยใช้ Origin-Trial ส่วนหัว HTTP การตั้งค่าส่วนหัว HTTP ต้องมีสิทธิ์เข้าถึงการกำหนดค่าเซิร์ฟเวอร์ของคุณ ส่วนหัวการตอบกลับที่ได้ควรมีลักษณะดังนี้
Origin-Trial: Auw/tjTQ2eJQ911wiMHi1Bb7i71...

หากต้องการดูโทเค็นช่วงทดลองใช้จากต้นทางในไฟล์ Service Worker ใช้เครื่องมือสำหรับนักพัฒนาเว็บ หรือคำสั่ง curl ดังนี้

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

เปิดใช้ช่องข้อมูลประจำตัวอีกครั้งหลังจาก Chrome 111

หากคุณใช้ Chrome 111 ขึ้นไป ช่องข้อมูลประจำตัวใน กิจกรรม canmakepayment รายการว่างเปล่า หากต้องการเปิดใช้ ภายในเครื่อง คุณสามารถทำสิ่งต่อไปนี้

  1. ใช้ Chrome 111 ขึ้นไป
  2. ป้อน chrome://flags/#add-identity-in-can-make-payment ในแถบ URL
  3. เปิดใช้การตั้งค่าสถานะ
  4. เปิด Chrome อีกครั้ง

ขั้นตอนถัดไป

เรามีแผนจะเปิดใช้การเปลี่ยนแปลงนี้โดยค่าเริ่มต้นใน Chrome 111 คุณเริ่มการทดสอบได้ตั้งแต่วันนี้เพื่อเตรียมความพร้อม สำหรับการเปลี่ยนแปลงเวลาการเปิดตัว