ajax全局设置相关

问题描述:怎么设置ajax的通用设置

解决方法:通过$.ajaxSetup()函数来全局设置。
如果要处理$.ajax()得到的数据,则需要使用回调函数:beforeSend、error、success、complete等等。

$.ajaxSetup({
    cache:false , // 不缓存该ajax请求的数据
})

问题描述:如果已在common.js设置ajax的全局属性如:

$.ajaxSetup({
    cache : false,
    type: 'POST',
    beforeSend : function(xhr, params) { // 发送请求前触发
        if(localStorage.length > 0 && localStorage.getItem("user")){
        
            if (params.url.indexOf('?') == -1) {
                params.url = params.url + "?userName=" + JSON.parse(localStorage.getItem("user")).loginName +"&token="+ localStorage.getItem("token")
            } else {
                params.url = params.url + "&userName=" + JSON.parse(localStorage.getItem("user")).loginName +"&token="+ localStorage.getItem("token")
            }
            return true;
        }
    }
});

那么,怎么在单独的某个ajax不使用该全局设置呢?

解决方法:在单个的ajax中重写设置好的属性(优先级覆盖)

问题描述:如果我既要使用设置好的全局属性,又要使用全局设置好的beforeSend,并且我还想在beforeSend中执行一些单个ajax需要执行的东西,该如何操作?

    解决方法:
    // 全局设置的beforeSend方法中判断单个里面是否有某方法,如果有执行,否则跳过
    $.ajaxSetup({
        cache : false,
        type: 'POST',
        beforeSend : function(xhr, params) { // 发送请求前触发
            if(typeof this.ajaxBeforeSendCallback != 'undefined'){
                this.ajaxBeforeSendCallback();
            }
            if(localStorage.length > 0 && localStorage.getItem("user")){
            
                if (params.url.indexOf('?') == -1) {
                    params.url = params.url + "?userName=" + JSON.parse(localStorage.getItem("user")).loginName +"&token="+ localStorage.getItem("token")
                } else {
                    params.url = params.url + "&userName=" + JSON.parse(localStorage.getItem("user")).loginName +"&token="+ localStorage.getItem("token")
                }
                return true;
            }
        }
    });
    // 单个需要在beforeSend中执行其他方法的ajax的使用
    $.ajax({
        url: url,
        data: data,
        dataType:"json",
        ajaxBeforeSendCallback:function(){
            // 在这里执行需要执行的方法
        },
        success: function(data){}
    });

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一章 入门 基本功能:访问和操作 dom 元素,控制页面样式,对页面的事件处理,与ajax完美结合,有丰富的插件...
    X_Arts阅读 1,071评论 0 2
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,198评论 19 139
  • 冬天来的时候总也睡不醒,每天晚上被子一盖就仿佛被封印,直到第二天日上三竿都不愿起来。 缩在被子里迷迷糊糊挣扎时总会...
    五月麦穗阅读 297评论 0 1
  • 81 画饼充饥 是乞丐的高级想象 可现在 成了多数人的精神食粮 82 双脚埋怨自己的压力 天天顶着负担 双手埋怨自...
    东者西迷阅读 236评论 0 1
  • 有没有一个人,不是男友,不是闺密,甚至已经不是朋友,但却在你长达10年的生活里无孔不入,无往弗届。每每想起他,就会...
    伊壁鸠鲁派阅读 357评论 1 10