最近开发过程中,遇到API接口要鉴权,每一个AJAX都需要传token。于是所有的AJAX都需要一个header,有点麻烦。
$.ajax({
url: "aaa/bbb/ccc",
header{
"token": xxxxxxx,
},
......
});
ajaxSetup
ajaxSetup() 方法为将来的 AJAX 请求设置默认值。
$(function () {
// 设置jQuery Ajax全局的参数
$.ajaxSetup({
header: {
"token": xxxxxxxx
}
complete: function (XMLHttpRequest, textStatus) {
var code = XMLHttpRequest.responseJSON.code;
if ([5001, 5002, 5003, 5004].indexOf(code) > -1) {
window.location.href = "./login.html";
}
}
});
});
通过ajaxSetup() 设置了header之后,默认全局AJAX都会带上这个header。
同时,上述代码中设置了complete,在调用完成之后,先判断返回状态是否是500x,如果是则表示未鉴权,返回login页面。
参考链接: