ブラウザを閉じるには、セッションを殺すために方法はありますか?私はONUNLOADとonbeforeunloadイベントを使用していました。それは仕事をdoesntの

ラリット:

私はセッションを殺すために、ブラウザのクローズイベントを捕捉するために(window.onunload)及び(window.onbeforeunload)イベントを使用していました。それはクロムに私のために動作しません。実行する方法はありますか?

だまします:

通常の非同期XMLHttpRequest(含むがfetch)、ページが閉じとしてキャンセルされる傾向にあります。通常の回避策は、同期要求を作成することでした。

しかし、それを行うための新しい方法があります:navigator.sendBeaconそれはページを閉じても後に実行される要求をキューに入れます-それは、心の中で正確な目的というかなり多くて設計されました。

window.addEventListener("unload", function() {
  navigator.sendBeacon("/logout");
});

それはまだあなたがそれが利用可能な場合、あなたがテストしたい場合がありますラグbehindersを気にし、ない場合は、上記の回避策を使用している場合は、すべてのブラウザでない作業を行います。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=239141&siteId=1