在使用jQuery的ajax請求中,我們有時需要在請求頭中添加一些自定義的信息,比如驗證信息、token等等。在jQuery中,我們可以通過設置ajaxSetup的headers屬性,為請求添加自定義的header。
$.ajaxSetup({
headers: {
'Authorization': 'Bearer ' + token,
'Custom-Header': 'custom value'
}
});
在這個例子中,我們設置了兩個自定義header:Authorization和Custom-Header。其中,Authorization是一個驗證header,用來傳遞token信息;Custom-Header則是我們自定義的header。
現在,我們使用jQuery發起一個ajax請求:
$.ajax({
url: 'http://example.com/api/users',
type: 'GET',
dataType: 'json',
success: function(data) {
console.log(data);
},
error: function(xhr, status, error) {
console.error(xhr.statusText);
}
});
這個ajax請求中,我們沒有顯式地指定header,而是使用了ajaxSetup中設置的默認header。當然,我們也可以在單個ajax請求中覆蓋ajaxSetup中的設置:
$.ajax({
url: 'http://example.com/api/users',
type: 'GET',
dataType: 'json',
headers: {
'Custom-Header': 'new custom value'
},
success: function(data) {
console.log(data);
},
error: function(xhr, status, error) {
console.error(xhr.statusText);
}
});
在這個請求中,我們覆蓋了ajaxSetup中的Custom-Header設置,值改為了“new custom value”。
總的來說,通過ajaxSetup設置默認header可以避免在每個ajax請求中重復設置相同的header。當需要覆蓋ajaxSetup中的設置時,可以在單個ajax請求中指定自己的header。