$.ajaxSetup()与$.ajax()区别


ajaxSetup()其使用方法与ajax()并无区别,只是在其之后的ajax()不用再重复添加相同参数,节省了代码量。
附:API中关于jQuery.ajaxSetup([options])的描述和jQuery 代码:
描述:
设置 AJAX 请求默认地址为 “/xmlhttp/”,禁止触发全局 AJAX 事件,用 POST 代替默认 GET 方法。其后的 AJAX 请求不再设置任何选项参数。
jQuery 代码:

$.ajaxSetup({
  url: "/xmlhttp/",
  global: false,
  type: "POST"
});
$.ajax({ data: myData });

function getCookie(name) {
  var cookie = document.cookie
  // console.log(cookie);
  var arr = cookie.split("; ") //将字符串分割成数组
  // console.log(arr);
  for (var i = 0; i < arr.length; i++) {
    var arr1 = arr[i].split("=")
    if (arr1[0] == name) {
      return unescape(arr1[1])
    }
  }
  return "GG"
}

var token = getCookie("token")
$.ajaxSetup({
  // contentType:"application/x-www-form-urlencoded;charset=utf-8",
  headers: {
    token: token
  },
//请求携带token必须设置以下参数
//--------------------------
  crossDomain: true,
  xhrFields: {
    withCredentials: true // 要在这里设置 跨域设置cookie
  },
//--------------------------
  complete: function(XMLHttpRequest, textStatus) {
    // console.log(XMLHttpRequest,textStatus)
    if (XMLHttpRequest.status == 401) {
      window.location.href = "/"
    }
  }
})



免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM