API Trình xử lý thanh toán cho phép nhà cung cấp dịch vụ thanh toán cung cấp trải nghiệm thanh toán tuỳ chỉnh cho người bán, cùng với API Yêu cầu thanh toán. Khi Payment Request API được khởi chạy thông qua hàm khởi tạo new PaymentRequest()
, API này sẽ tự động kích hoạt một sự kiện canmakepayment
với nguồn gốc của người bán và dữ liệu tuỳ ý cho một worker dịch vụ được đăng ký cho Payment Handler API.
Giao tiếp giữa các nguồn gốc này không yêu cầu cử chỉ của người dùng và không hiển thị giao diện người dùng nào.
Chrome sẽ xoá các trường nhận dạng khỏi sự kiện canmakepayment
và bắt đầu thử nghiệm theo nguyên gốc từ Chrome 108.
Thông tin trên trang này chỉ áp dụng cho các nhà cung cấp ứng dụng thanh toán sử dụng API Trình xử lý thanh toán. Nếu không sử dụng tính năng này, bạn có thể bỏ qua hướng dẫn này.
Điều gì sẽ thay đổi?
Khi người bán gọi new PaymentRequest()
, một worker dịch vụ đã đăng ký sẽ nhận được một sự kiện canmakepayment
(CanMakePaymentEvent
) chứa các thông tin sau:
topOrigin
paymentRequestOrigin
methodData
modifiers
Các thông tin này sẽ bị xoá và worker dịch vụ sẽ chỉ nhận được sự kiện canmakepayment
mà không có thêm thông tin nào.
Phát hiện tính năng
Để phát hiện xem sự kiện canmakepayment
có thay đổi trong mã worker của dịch vụ hay không, hãy kiểm tra các thuộc tính tương ứng như sau:
self.addEventListener(e => {
if (e.paymentRequestOrigin) {...}
if (e.topOrigin) {...}
if (e.methodData && e.methodData.length > 0) {...}
if (e.modifiers && e.modifiers.length > 0) {...}
...
});
Thử thay đổi trên máy
Cách bật thay đổi cục bộ cho mục đích phát triển:
- Sử dụng Chrome 108, 109 hoặc 110.
- Nhập
chrome://flags/#clear-identity-in-can-make-payment
vào thanh URL. - Bật cờ.
- Chạy lại Chrome.
Khi bạn bật cờ này, các trường nhận dạng trong sự kiện canmakepayment
sẽ được làm trống (và Ý định IS_READY_TO_PAY
của Android).
Bật thay đổi trong môi trường phát hành công khai
Bạn cũng có thể bật thay đổi trong bản phát hành công khai cho mục đích kiểm thử trước khi thay đổi đó thực sự xuất hiện trong Chrome. Cơ chế này được gọi là thử nghiệm nguồn gốc.
Bản dùng thử theo nguyên gốc cho phép bạn dùng thử các tính năng mới và đưa ra ý kiến phản hồi về khả năng hữu dụng, tính thực tế và hiệu quả của các tính năng đó cho cộng đồng tiêu chuẩn web. Để biết thêm thông tin, hãy xem Hướng dẫn về bản dùng thử theo nguyên gốc dành cho nhà phát triển web. Để đăng ký sử dụng chương trình dùng thử này hoặc một chương trình dùng thử khác theo nguyên gốc, hãy truy cập vào trang đăng ký.
Cách đăng ký thử nghiệm nguồn gốc:
- Yêu cầu mã thông báo cho nguồn gốc của bạn.
- Thêm mã thông báo vào tệp JavaScript của worker dịch vụ bằng tiêu đề HTTP
Origin-Trial
. Để đặt tiêu đề HTTP, bạn cần có quyền truy cập để định cấu hình máy chủ. Tiêu đề phản hồi thu được sẽ có dạng như sau:
Origin-Trial: Auw/tjTQ2eJQ911wiMHi1Bb7i71...
Để xem mã thông báo thử nghiệm gốc trên tệp worker, hãy sử dụng DevTools hoặc lệnh curl
như sau:
$ curl --head <Service Worker JS file URL> | grep -i origin-trial
origin-trial: Auw/tjTQ2eJQ911wiMHi1Bb7i71...
Bật lại các trường nhận dạng trên máy sau Chrome 111
Nếu bạn đang sử dụng Chrome 111 trở lên, các trường danh tính trong sự kiện canmakepayment
sẽ để trống. Để bật lại các trường trên máy, bạn có thể làm như sau:
- Sử dụng Chrome 111 trở lên.
- Nhập
chrome://flags/#add-identity-in-can-make-payment
vào thanh URL. - Bật cờ.
- Chạy lại Chrome.
Các bước tiếp theo
Thay đổi này dự kiến sẽ được bật theo mặc định từ Chrome 111. Bạn có thể bắt đầu thử nghiệm ngay hôm nay để chuẩn bị cho việc thay đổi thời gian ra mắt.