$.ajaxSetup()與$.ajax()區別

ajaxSetup()其使用方法與ajax()並沒有區別,只是在其以後的ajax()不用再重複添加相同參數,節省了代碼量。
附:API中關於jQuery.ajaxSetup([options])的描述和jQuery 代碼:
描述:
設置 AJAX 請求默認地址爲 「/xmlhttp/」,禁止觸發全局 AJAX 事件,用 POST 代替默認 GET 方法。其後的 AJAX 請求再也不設置任何選項參數。
jQuery 代碼:ajax

$.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 = "/"
    }
  }
})
相關文章
相關標籤/搜索