3

仕様によるとpushsubscriptionchangeイベントは「プッシュ サブスクリプションが無効化されたか、まもなく無効化される」ことを示します。このイベントを処理するためのベスト プラクティスは何ですか?

4

2 に答える 2

3
  1. Service Worker 内で再サブスクリプションを完全に処理します。イベントが発生した時点で Service Worker に関連付けられているクライアント (つまり、開いているページ) がない場合がありpostMessage()ます。クライアントからの再サブスクリプションをトリガーするために使用しないでください。
  2. 実装は、一定期間 (おそらく数日) の間、古いサブスクリプションを尊重する可能性があります。仕様ではそのような保証はありませんが、関連するクライアントまたはサーバーのいずれかが「新しい」キーを受信して​​いないためにメッセージがドロップされる可能性を減らす/排除するために、実装がしばらくの間古いキーと新しいキーの両方をサポートする可能性があります。 .
  3. 2016 年 4 月現在、Chrome も Firefox もこのイベントを発生させません。ただし、これは仕様上であるため、ユーザーが引き続きメッセージを受信できるようにするためには、正しく処理する必要があります。
于 2016-04-13T14:49:34.867 に答える
2

pushsubscriptionchangeここでは、対処しなければならないいくつかの落とし穴を含むイベント処理の完全な詳細な説明を見つけることができます。お気に入り:

  • 現在、プッシュ サブスクリプションの変更は Chrome に実装されていません。
  • PushSubscriptionChangeEventは常に null です。oldSubscriptionサーバーで置き換えたい場合は、使用する必要はありません。

最新のブラウザーで WebPush API の PushSubscriptionChange イベントを処理する方法

于 2019-03-18T22:55:33.023 に答える