我有一個Web應用程序,我試圖在窗口關閉時向服務器發送通知。到目前爲止,我發現的最好方法是在onunload中使用同步xhr(因爲異步是不可靠的)。下面是目前的代碼:在窗口關閉時發送通知
window.onunload = function() {
var req = new XMLHttpRequest();
req.open('GET', '/api/v1/' + id + '/close?resource=' + JSON.stringify(resource), false);
req.setRequestHeader('Authorization', localStorage.token);
req.send();
}
唯一的問題是,當他們重新加載頁面,頁面定格位(我認爲這是由於XHR)。當窗口關閉時,有沒有更好的方式將通知發送到服務器?
我最初有它作爲beforeunload,但似乎在beforeunload發送的XHR請求是不可靠的,如果他們是異步的(即使我不包括返回值),並且包含與onunload同樣的問題(如果同步的話),因爲刷新頁面會凍結所有內容。 – Zavec