重写ajax请求头


(function($){  
    //备份jquery的ajax方法  
    var _ajax=$.ajax;  
      
    //重写jquery的ajax方法  
    $.ajax=function(opt){
        //备份opt中error和success方法  
        var fn = {  
            error:function(XMLHttpRequest, textStatus, errorThrown){},  
            success:function(data, textStatus){}  
        }  
        if(opt.error){  
            fn.error=opt.error;  
        }  
        if(opt.success){  
            fn.success=opt.success;  
        }  
        //扩展增强处理  
        var _opt = $.extend(opt,{

            //在此处设置请求头
            beforeSend:function(xhr){
                setRequestHeaders(xhr);
            },

           //在此处设置error
            error:function(XMLHttpRequest, textStatus, errorThrown){  
                //错误方法增强处理
                var result=null;
                if (XMLHttpRequest.responseText && XMLHttpRequest.responseText !="") {
                    result=$.parseJSON(XMLHttpRequest.responseText);
                }else if (XMLHttpRequest.responseJSON && XMLHttpRequest.responseJSON != "" && XMLHttpRequest.responseJSON != null) {
                    result=$.parseJSON(XMLHttpRequest.responseJSON);
                }
                if (result !=null && result.code == "401") {
                    alert("登录已经超时,请重新登录!",function(){
                        $.removeCookie('jaAuthorization');
                        $.removeCookie('jaloginName');
                        $.removeCookie('japassword');
                        $.removeCookie('jaUserId');
                        $.removeCookie('jaUserType');
                        window.parent.location.href='../login.html';
                    });
                    return ;
                }else if(result !=null &&  result.code == "403"){
                    alert("没有权限,请联系管理员",function(){
                        
                    });
                    return ;
                }else if (result !=null) {
                    alert(result.desc,function(){});
                    return ;
                }
                fn.error(XMLHttpRequest, textStatus, errorThrown);  
            }
        });  
        _ajax(_opt);  
    };  
})(jQuery);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值