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

springmvc 拦截器区分ajax请求

2015-08-19 14:03 507 查看

引子

最近由于工作需要,在拦截器里对ajax请求做一些不同的处理,在这里把自己的的处理方式分享出来。比较简单,看看代码就会明白了。

ajax代码

[code]$(document).ready(function(){
    $(".new_bt").click(function(){
        data = ...;
        $.ajax({
            type: "POST",
            url: "../index/saveYue.do",
            data:data,
            dataType: "json",
            success:function(data){
                //成功的处理
            }
            error:function(data){   
                if(data.responseText=='loseSession'){
                    //session失效时的处理  
                }
            }
        });
    });


拦截器代码

[code]    @Override
    public boolean preHandle(HttpServletRequest req, HttpServletResponse resp, Object obj){     
        //一系列处理后发现session已经失效
        if (req.getHeader("x-requested-with") != null && req.getHeader("x-requested-with").equalsIgnoreCase("XMLHttpRequest")){ //如果是ajax请求响应头会有x-requested-with  
            PrintWriter out = resp.getWriter();  
            out.print("loseSession");//session失效
            out.flush();
            return false;
        }else{
            //非ajax请求时,session失效的处理
        }
        return true;
    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: