การอัปเดตลักษณะการทํางานของเหตุการณ์ 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

โปรแกรมเหล่านี้จะถูกนำออก และ 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 จะถูกล้างออก (และ Intent ของ Android IS_READY_TO_PAY)

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

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

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

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

  1. ขอโทเค็น สำหรับต้นทาง
  2. เพิ่มโทเค็นลงในไฟล์ JavaScript ของ Service Worker โดยใช้ส่วนหัว HTTP Origin-Trial การตั้งค่าส่วนหัว 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 คุณเริ่มการทดสอบได้วันนี้เพื่อเตรียมตัว ให้พร้อมรับการเปลี่ยนแปลงนี้ทันเวลาสำหรับการเปิดตัว