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…