$.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 = "/"
}
}
})