私の問題は、リロード時ではなく、ユーザーがウィンドウを閉じたときにのみ同期 ajax リクエストを実行したいということです。私はライブ オークション マネージャー インターフェイスを持っています。ユーザーは、ログアウトするか、オークションを終了した後にのみウィンドウを閉じる必要があります。これは、モバイル アプリ API が、オークションが終了した後にオークションが行われるとマークし、モバイル アプリ ユーザーにチャンスを与えるためです。商品の入札を続ける。しかし、私が彼らに送ったユースケースでも、彼らはログアウトしたり、オークションを終了したりしないので、完全に確実なものにする必要があります。オークションを終了する同期リクエストを送信します。window.onbeforeunload イベントを見つけましたが、f5 を押したりページを離れたりしても要求が送信されますが、これは適切な解決策ではありません。オークション、アイテム、入札は memcache に保存されるため、ウィンドウを閉じてもリセットされません。すべてのアイテムを削除する必要があります。これまでのコード:
window.onbeforeunload = closingCode;
function closingCode(e) {
$.ajax({
type: "POST",
url: ajaxPath,
async: false,
data: {callback: "endOnClose", params: []},
});
}
これに対する解決策があることを願っています。前もって感謝します!