これは私が過去に使用したソリューションです。
サーバー側:
私はセッションがまだ有効であるかどうかをチェックしていたとき、私も "に目を光らせておきますあなたがjQueryを使っているならば、 "XMLHttpRequest"でなければなりません(注:IEは小文字のヘッダ名を返す傾向がありますので、それも見てください)。クライアント側
{ "SESSION": "EXPIRED" }
:セッションは確かに有効期限が切れており、ヘッダが代わりにHTTPリダイレクト使用するので、私はこのような単純なJSONオブジェクトで応答し、存在する場合、私のonloadイベントコードで
を、私が使用しjQueryのajaxCompleteイベント。セッションの期限切れオブジェクトのすべての着信要求ペイロードをチェックします。コードは次のようになります:
$(window).ajaxComplete(function(ev, xmlhr, options){
try {
var json = $.parseJSON(xmlhr.responseText);
}
catch(e) {
console.log('Session OK');
return;
}
if ($.isPlainObject(json) && json.SESSION == 'EXPIRED') {
console.log('Session Expired');
//inform the user and window.location them somewhere else
return;
}
console.log('Session OK');
});
あなたは認証クッキーをチェックしようとしたことがありますか? – user120242