您的位置:首页 > 编程语言 > Java开发

springmvc ajax请求处理跳转问题

2015-06-27 13:36 381 查看
1.在springmvc或者一套ajax框架的时候需要进行处理,拦截器或者拦截器的状态,尤其针对于session的时候进行的处理,怎么样很好的控制页面的跳转呢

在拦截器里面进行处理和跳转的时候,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");   
	         }   
       }   
  });


好了这样就可以进行设置状态和进行跳转了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: