解决:异步判断session过期,session过期不跳转,session过期返回了页面源码但是没有跳转到过期页面;

Filter中配置session过期跳转

判断是否是ajax请求:

 /**
     * ajax 请求判断
     *
     * @param request
     * @return
     */
    public static boolean isAjaxRequest(HttpServletRequest request) {
        String headerX = request.getHeader("X-Requested-With");
        return headerX != null && headerX.equalsIgnoreCase("XMLHttpRequest");
    }

如果是ajax请求,向页面打印信息‘SESSION_OUT’,如果不是,则重定向需要跳转的页面

if (null == obj ) {
      if (isAjaxRequest(request)) {
              response.getWriter().print("SESSION_OUT");
       } else {
              request.setCharacterEncoding("UTF-8");
              response.setCharacterEncoding("UTF-8");
              response.sendRedirect(request.getContextPath() + "/loginController/session.vrv");
               }
    } 

前端jsp页面配置全局js

$(document).ajaxComplete(function (event, xhr, settings) {
    if (xhr.responseText && xhr.responseText == "SESSION_OUT") {
        window.location.href = "**********";//这边写跳转登录页面网址
    }
});

href指定需要跳转的页面路径;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值