#javascript #google-chrome #addeventlistener
#javascript #google-chrome #addeventlistener
Вопрос:
когда браузер или вкладка закрываются, мне нужно отправить запрос на выход на сервер, и я использую следующий код. Он работает во всех браузерах, кроме Chrome.
function httpGetLogout(url)
{
var xmlHttp = new XMLHttpRequest();
xmlHttp.open( "GET", url, false ); // false for synchronous request
xmlHttp.send( null );
return xmlHttp.responseText;
}
function autoLogout(){
window.addEventListener('beforeunload', function (e) {
httpGetLogout('/logout');
e.preventDefault();
e.returnValue = '';
});
}
Комментарии:
1. Синхронный XHR устарел. Кроме того,
beforeunload
событие может никогда не сработать. Не рекомендуется полагаться на это.2. Спасибо D. Pardal, я попробовал ‘onbeforeunload’, также все та же проблема в браузере Chrome.