springmvc ajax请求处理跳转问题
2015-06-27 13:36
381 查看
1.在springmvc或者一套ajax框架的时候需要进行处理,拦截器或者拦截器的状态,尤其针对于session的时候进行的处理,怎么样很好的控制页面的跳转呢
在拦截器里面进行处理和跳转的时候,ajax基本上没有什么好的处理方式要么是转发要么是重定向的两种方式
可是进行过测试和很多的处理依然可以做到,但是页面不会跳转.针对以上的两种情况,经过自己的探究和研究得到一种很可靠的方式,网上也提供了这种方式,但是只是思想,有代码但是实践不可行,个人整理了下并且测试通过,自己做个记录帮助别人或者自己吧。
2思想:session设置状态,全局ajax进行状态的设置和更改进行页面的条状,后台需要进行XMLHttpRequest的拦截
自己实现的方式贴上源代码
在js的代码里面进行跳转
好了这样就可以进行设置状态和进行跳转了。
在拦截器里面进行处理和跳转的时候,ajax基本上没有什么好的处理方式要么是转发要么是重定向的两种方式
可是进行过测试和很多的处理依然可以做到,但是页面不会跳转.针对以上的两种情况,经过自己的探究和研究得到一种很可靠的方式,网上也提供了这种方式,但是只是思想,有代码但是实践不可行,个人整理了下并且测试通过,自己做个记录帮助别人或者自己吧。
2思想:session设置状态,全局ajax进行状态的设置和更改进行页面的条状,后台需要进行XMLHttpRequest的拦截
自己实现的方式贴上源代码
if (request.getHeader("x-requested-with") != null && request.getHeader("x-requested-with").equalsIgnoreCase("XMLHttpRequest")) { response.setCharacterEncoding("UTF-8"); response.setContentType("text/html"); response.setDateHeader("Expires", 0); response.setHeader("sessionstatus", "timeout"); }
在js的代码里面进行跳转
$.ajaxSetup({ contentType:"application/x-www-form-urlencoded;charset=utf-8", complete:function(XMLHttpRequest,textStatus){ //通过XMLHttpRequest取得响应头,sessionstatus, var sessionstatus=XMLHttpRequest.getResponseHeader("sessionstatus"); if(sessionstatus=="timeout"){ // alert("登录超时,请重新登录!"); //如果超时就处理 ,指定要跳转的页面 window.location.replace(rootPath + "/jsp/admin/login.jsp"); } } });
好了这样就可以进行设置状态和进行跳转了。
相关文章推荐
- 29、java中阻塞队列
- 最新eclipse与gnome2(mata)不兼容的解决办法
- JavaSE笔记之<多态深入理解>
- Eclipse版GoogleI/O2014开源项目
- Spring 配置 工程Web.xml中encodingFilter
- Struts2的值栈
- java 遍历arrayList的四种方法
- eclipse集成jetty插件开发web项目
- win7 x64下eclipse远程到hadoop2.6.0集群服务器+word count 实例演示
- java将中文转换成英文并支持首字母大写
- javaWEB基础
- Java反射机制
- MyEclipse10注释字体变小的原因
- java并发编程之Semaphore
- Java-对象数组排序
- java的堆和栈
- eclipse中文注释字体太小解决方法
- Java深入浅出系列(四)——深入剖析动态代理--从静态代理到动态代理的演化
- javascipt模拟生成form表单2种提交方式
- Java中ArrayList和LinkedList区别