如果用戶正在關閉標籤頁,我需要註銷用戶。我試着通過在onbeforeunload
方法調用一個Ajax功能做到這一點:標籤關閉時,AJAX註銷不起作用
$(document).ready(function() {
window.onbeforeunload = function() {
if (!validNavigation) { // I set validNavigation = true when user clicks on different internal links etc
LogOff();
}
}
});
var validNavigation = false;
function LogOff() {
$.ajax({
cache: false,
data: { },
dataType: 'json',
url: '/Account/LogOffAjax',
type: 'post',
success: function (resp) {
if (resp.IsSuccessful) {
}
else {
alert(resp.ExceptionKey);
}
},
error: function (data) {
alert('unknown error');
}
});
};
方法,無需內部(由調試器檢查)任何異常LogOffAjax來電,但用戶停留登錄如果我調用此方法時。用戶只需點擊鏈接(不關閉標籤) - 用戶已註銷(因此方法正確)。我認爲當標籤關閉時cookie不能被清除(但是爲什麼服務器「認爲」用戶仍然登錄很奇怪)。
我該如何解決這個問題?
好的,哪個cookie名稱需要清除? –
'.ASPXAUTH' - 應該存在。可以?無論是那個還是'.AspNet.ApplicationCookie',如果你使用的是ASP.NET MVC 5 – damienc88