国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > AJAX > 正文

重寫 ajax 實現 session 超時跳轉到登錄頁面實例代碼

2024-09-01 08:30:41
字體:
來源:轉載
供稿:網友

問題:使用window.location.href來跳轉頁面的時候,后端只需實現一個過濾器就可以在session超時的情況下重定向到登陸頁面。但是使用ajax呢?使用ajax來執行會發生302錯誤,并且頁面不可能跳轉。下面就針對這個問題來貼上我的前后端代碼。

1、session過濾器

import java.io.IOException;<p style="text-align: center"><img alt=""import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;<p style="text-align: center"><img alt=""public class SessionFilter implements Filter {<p style="text-align: center"><img alt="" public void doFilter(ServletRequest req, ServletResponse res, FilterChain filterChain)   throws IOException, ServletException {  HttpServletRequest request = (HttpServletRequest) req;  HttpServletResponse response = (HttpServletResponse) res;<p style="text-align: center"><img alt=""  String requestUri = request.getRequestURI();<p style="text-align: center"><img alt=""  if (requestUri.indexOf("/login.html") > 0 || requestUri.indexOf("/system/login") > 0) {   return ;  }<p style="text-align: center"><img alt=""  HttpSession session = request.getSession(false);<p style="text-align: center"><img alt=""  if (session == null) {   // 如果是session超時,在此處做處理。   response.sendRedirect(request.getContextPath() + "/login.html");   return ;  }  try {   filterChain.doFilter(request, response);  } catch (Exception e) {   e.printStackTrace();  }  return ; }}

2、web.xml添加配置:

<filter>  <filter-name>sessionFilter</filter-name>  <filter-class>com.manager.filter.SessionFilter</filter-class></filter><filter-mapping>  <filter-name>sessionFilter</filter-name>  <url-pattern>/manager/*</url-pattern></filter-mapping>

*3、重寫ajax

注意:此段代碼放在index頁

jQuery(function($){   var _ajax=$.ajax;   $.ajax=function(opt){    var _success = opt && opt.success || function(a, b){};    var _opt = $.extend(opt, {     success:function(data, textStatus){      _success(data, textStatus);      },     error:function(XMLHttpRequest, textStatus, errorThrown){      //alert(XMLHttpRequest.responseText);      //如果請求發生錯誤,會返回登陸頁面源代碼,如果源代碼里面存在lovnx這個字符串,前端就重定向到登陸頁面      var reData = XMLHttpRequest.responseText + "";      if(reData.indexOf('lovnx') != -1) {       window.location.href="/manager/login.html" rel="external nofollow" ;       return;      }     }    });    return _ajax(_opt);   };  });

4、登陸頁面添加代碼

<input type="hidden" value="lovnx">

以上所述是小編給大家介紹的重寫 ajax 實現 session 超時跳轉到登錄頁面實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 淮安市| 河津市| 连山| 南陵县| 奉新县| 宁城县| 安新县| 闽侯县| 曲周县| 姜堰市| 宣城市| 华容县| 天祝| 彭阳县| 尼玛县| 敖汉旗| 察哈| 南靖县| 金昌市| 嵩明县| 高平市| 廊坊市| 廉江市| 临邑县| 桦南县| 翁牛特旗| 收藏| 色达县| 古丈县| 甘泉县| 鄱阳县| 河北区| 福泉市| 普陀区| 玉屏| 青铜峡市| 磐安县| 蒲城县| 敦化市| 阜宁县| 康马县|