根据您的需要,有多种解决方案...
如果你想将自定义标头(或标头集)添加到单个请求然后只需添加headers
财产:
// Request with custom header
$.ajax({
url: 'foo/bar',
headers: { 'x-my-custom-header': 'some value' }
});
如果你想为每个请求添加默认标头(或标头集)然后使用$.ajaxSetup()
:
$.ajaxSetup({
headers: { 'x-my-custom-header': 'some value' }
});
// Sends your custom header
$.ajax({ url: 'foo/bar' });
// Overwrites the default header with a new header
$.ajax({ url: 'foo/bar', headers: { 'x-some-other-header': 'some value' } });
如果你想为每个请求添加一个标头(或一组标头)然后使用beforeSend
钩与$.ajaxSetup()
:
$.ajaxSetup({
beforeSend: function(xhr) {
xhr.setRequestHeader('x-my-custom-header', 'some value');
}
});
// Sends your custom header
$.ajax({ url: 'foo/bar' });
// Sends both custom headers
$.ajax({ url: 'foo/bar', headers: { 'x-some-other-header': 'some value' } });
编辑(更多信息):需要注意的一件事是ajaxSetup
您只能定义一组默认标头并且只能定义一个beforeSend
。如果你打电话ajaxSetup
多次,只会发送最后一组标头,并且只会执行最后一个发送前回调。