$.ajaxSetup({contentType : "application/x-www-form-urlencoded;charset=utf-8",complete : function(xhr, textStatus) {if (xhr.status == 520) {//如果返回状态码是520window.location..reload();//刷新页面,执行登录逻辑return;}}
});

java代码:

  1. 写一个filter

import java.io.IOException;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;public class SessionTimeoutFilter implements Filter {public void destroy() {}public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {HttpServletRequest req = (HttpServletRequest) request;HttpServletResponse res = (HttpServletResponse) response;// 判断session里是否有用户信息if (req.getSession().getAttribute("username") == null){// 如果是ajax请求响应头会有,x-requested-with;if (req.getHeader("x-requested-with") != null && req.getHeader("x-requested-with").equalsIgnoreCase("XMLHttpRequest")){res.setStatus(520);//表示session timeout}else{chain.doFilter(req, res);}}else{chain.doFilter(req, res);}}public void init(FilterConfig chain) throws ServletException {}
}

转载地址: https://www.cnblogs.com/cxyj/p/3884964.html

Ajax请求Session超时解决相关推荐

  1. Ajax请求session超时解决办法

    Ajax请求session超时解决办法 问题描述 通过ajax发送请求,被后台过滤器或者拦截器拦截的时候,如果session超时,不会直接跳转到登录页面. 解决方案 在过滤器或者拦截器中设置respo ...

  2. Ajax请求session超时处理流程(DWZ)

    DWZ-Java框架Ajax请求session超时处理思路:     1)SessionValidateFilter统一验证session是否超时     2)SessionValidateFilte ...

  3. Ajax请求Session超时的解决办法:拦截器 + 封装jquery的post方法

    目标:前端系统,后端系统等,统一处理Session超时和系统错误的问题. 可能需要处理的问题:Session超时.系统500错误.普通的业务错误.权限不足. 同步请求: Session超时,登录拦截器 ...

  4. php ajax session失效,PHP中解决ajax请求session过期退出登录问题

    1.session过期,如果直接是url请求,或者用户在打开的系统页面中直接清除缓存及cookie信息,可直接在php的入口文件中调用以下封装的方法,进行session信息判断以及页面的跳转,如: i ...

  5. ajax去掉session,PHP中解决ajax请求session过时退出登陆问题

    一.session过时,若是直接是url请求,或者用户在打开的系统页面中直接清除缓存及cookie信息,可直接在php的入口文件中调用如下封装的方法,进行session信息判断以及页面的跳转,如: p ...

  6. 微信内置浏览器Ajax请求10s超时重发问题的解决方案

    最近在做一个微信公众号的项目,期间遇到一个纠结了几天的问题,就是微信页面上激活一次Ajax,实际执行两次请求,由于现实情况原因,该Ajax请求有时延迟会在20s以上.分析后台日志发现,如果Ajax请求 ...

  7. 炉石服务器请求超时何时才能修复,炉石传说登陆提示请求已超时怎么办_炉石传说登陆提示请求已超时解决方法_3DM网游...

    炉石传说登陆提示请求已超时怎么办?2月19日开始,一些玩家在登录炉石传说移动端的时候出现了登陆提示请求已超时的情况,无法进入游戏,不知道怎么解决,下面小编为大家带来了炉石传说登陆提示请求已超时解决方法 ...

  8. 解决ajax请求跨域,解决ajax请求跨域

    跨域大部分需要通过后台解决,引起跨域的原因: 3个问题同时满足 才可能产生跨域问题,即跨域(协议,主机名,端口号中有一个不同就产生跨域) 下面是解决方法 方法一 // ajax请求跨域 /* *解决a ...

  9. Extjs6关于Ajax和form表单提交以及store请求session超时的处理方法

    对于Store的处理 每个store配置的时候,配上load监听,加载时处理: usrStore : {model : 'App.model.Usr',autoLoad : false,proxy : ...

最新文章

  1. 东汉末年,他们把「服务雪崩」玩到了极致(干货)
  2. 微信小程序横向图片左右滑动
  3. 我们学校也在使用IPV6
  4. sonar plugin DefaultMeasure与DefaultHighlighting
  5. es6 --- set实现并集(Union)、交集(Intersect)和差集(Difference)
  6. java垃圾回收机制_干货:Java 垃圾回收机制
  7. php如何复制一个对象,PHP中的对象复制及__clone() 函数
  8. 深交所与工信部签署优质中小企业上市培育战略合作协议
  9. python控制视频_控制Python面向对象的访问
  10. 三菱驱动器参数表_三菱 M 参数表
  11. 第十四届教育技术与计算机国际会议新增SSCI, ESCI期刊
  12. 爬小猪短租发布的房子信息
  13. 安装Kali Linux渗透系统
  14. JAVA实现 剑指offer第二版 2
  15. 支付宝app登录授权的infoStr授权登录流程
  16. 10000php换人民币,转 数字转大写人民币
  17. 什么是相对论?相对论是什么?用人话讲讲相对论
  18. gap,margin和padding的区别
  19. Docker 安装 (完整版)
  20. java岗位面试英文自我介绍,面试外企英文自我介绍

热门文章

  1. 借助码云快速安装 golang.org/x/lint/golint 和 golang.org/x/tools/ 等依赖
  2. 微服务设计 读书笔记 一
  3. Stackoverflow上人气最旺的十个Java问题
  4. 【百度地图API】自行获取区域经纬度的工具
  5. 获取指定个数指定范围的随机数
  6. log4net.SignalR - 日志即时发送客户端页面
  7. ASP.NET中进行消息处理(MSMQ)
  8. Android permission 访问权限一览
  9. 使用border-collapse:collapse;属性新建一个细线表格
  10. 分辨率与栅格系统的对应关系: