前台ajax重写方法搭配后台filter返回status实现ajax请求跳转登录页面

前后端分离之后,原生的jquery的ajax不能实现控制页面跳转,一般会出现状态码302错误,但是可以通过重写ajax增强方法,搭配后台返回状态码错误实现页面跳转.后台的filter核心代码为

 HttpServletResponse httpResponse = (HttpServletResponse) response;

            if(url.equals(contextPath + "/data")) {
               httpResponse.sendError(HttpServletResponse.SC_UNAUTHORIZED);
               //httpResponse.sendRedirect(contextPath + "/index.jsp");
            }
前台的ajax重写核心代码:

  error : function(XMLHttpRequest, textStatus, errorThrown) {
                // 错误方法增强处理
            if(XMLHttpRequest.status ==401) {
                    window.location.href = "login.html";
                }
                    callback.error(XMLHttpRequest, textStatus, errorThrown);
            },
如果有实现起来有困难,下面给出链接一个小的demo

链接看这里

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值