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

springMVC拦截器处理ajax请求及数据返回

2017-11-06 12:24 267 查看
正常情况下,springMVC的拦截器的response.sendRedirect是可以跳转的。但是,如果前端用的ajax请求,则response.sendRedirect不能正常跳转。

ajax有自己独立的请求头x-requested-with,加上springMVC有一套自己的机制处理ajax请求。

if (req.getHeader("x-requested-with")!= null && req.getHeader("x-requested-with").equalsIgnoreCase("XMLHttpRequest")){//如果是ajax请求响应头会有x-requested-with 

                              ServletOutputStreamout = rep.getOutputStream();

                                                  out.print("unlogin");//返回给前端页面的未登陆标识

                                  out.flush();

                                  out.close();

                                  return false;

                 }else{

                                                  Stringindexurl=content+"/index.html";

                                           
4000
       rep.sendRedirect(indexurl);

                                                  returnfalse;

                                         }

                   
特别注意:springMVC默认用的是outputStream,所以在向外输出的时候,一定不能用getPrintWriter。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: