ホームページ  >  記事  >  ウェブフロントエンド  >  jQuery ajax グローバル関数は、セッション有効期限切れ後の ajax ジャンプ問題を処理します

jQuery ajax グローバル関数は、セッション有効期限切れ後の ajax ジャンプ問題を処理します

高洛峰
高洛峰オリジナル
2017-01-07 09:39:401244ブラウズ

Web 作業を行う場合、セッションの有効期限が切れると、ページはログイン インターフェイスにジャンプします。ただし、ページの有効期限が切れた場合、ユーザーには 2 つの方法があります。バックグラウンドでのリクエスト: 従来の方法と非同期リクエストの方法。リクエストはバックグラウンドに移動し、期限切れの操作をインターセプトし、直接ジャンプします。ただし、非同期リクエストはページ全体を更新しません。有効期限は通常の方法では処理できないため、追加の操作が必要です。

具体的なアイデア: インターセプターで ajax リクエストであるかどうかを判断します。ajax リクエストである場合は、メッセージを返します。セッションがメッセージを判断する場合は、グローバル ajax 処理イベントをページに追加します。有効期限が切れている場合は、ログイン ページに移動します

最初のステップでは、インターセプターは、それが Ajax リクエストであるかどうかを判断します。インターセプターやフィルターに似ています:

if(request.getHeader("x-requested-with")!=null
&& request.getHeader("x-requested-with").equalsIgnoreCase("XMLHttpRequest")){
//是ajax请求,则返回个消息给前台
PrintWriter printWriter = response.getWriter();
printWriter.print("{sessionState:timeout}");
printWriter.flush();
printWriter.close();
}else{
//不是ajax请求,则直接跳转页面
}

これは jQuery をベースにした非同期処理機構です。 前回会社で書いたコードの一部は持ち出せません。の記事はネットで見つけて貼り付けました。早朝に30分も経ってしまいました、すみません、あまりにも眠いので、感想をメモしました。

PS: Ajax 操作のグローバル監視、ユーザー セッションの無効化

$.ajaxSetup({
contentType:"application/x-www-form-urlencoded;charset=utf-8",
cache:false ,
complete:function(data,TS){
//对返回的数据data做判断,
//session过期的话,就location到一个页面
}
}
});

セッション有効期限切れ後の Ajax ジャンプ問題に対処するための jQuery Ajax グローバル関数の詳細については、PHP 中国語 Web サイトの関連記事に注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。