ServiceWorkerGlobalScope: canmakepayment イベント
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimental: これは実験的な機能です。
本番で使用する前にブラウザー互換性一覧表をチェックしてください。
安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。
メモ: この機能はサービスワーカー内でのみ利用可能です。
canmakepayment は ServiceWorkerGlobalScope インターフェイスのイベントで、決済アプリのサービスワーカーで発生し、決済処理の準備ができているかどうかを確認します。具体的には、販売者ウェブサイトが PaymentRequest() コンストラクターを呼び出すと発生します。
構文
このイベント名を addEventListener() などのメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。
addEventListener("canmakepayment", (event) => {}); oncanmakepayment = (event) => {}; イベント型
CanMakePaymentEvent です。ExtendableEvent から継承しています。
例
canmakepayment イベントは、決済アプリのサービスワーカーで発行され、決済処理の準備ができているかどうかを調べます。具体的には、販売者のウェブサイトが PaymentRequest() コンストラクターを呼び出すと発行されます。サービスワーカーは、次のように CanMakePaymentEvent.respondWith() メソッドを使用して適切に応答することができます。
self.addEventListener("canmakepayment", (e) => { e.respondWith( new Promise((resolve, reject) => { someAppSpecificLogic() .then((result) => { resolve(result); }) .catch((error) => { reject(error); }); }), ); }); respondWith() は、サービスワーカーが決済リクエストを処理できる状態にある (true) またはそうでない (false) ことを示す論理値で解決するプロミス (Promise) を返します。
仕様書
| Specification |
|---|
| Payment Handler API> # the-canmakepaymentevent> |
ブラウザーの互換性
Loading…