向 Ajax 请求添加自定义 HTTP 标头使开发人员能够将附加信息附加到出站请求。 JavaScript 和 jQuery 提供了多种方法来实现此自定义。
向单个请求添加自定义标头
要为特定请求指定 HTTP 标头,请在创建时使用 headers 属性Ajax 调用:
$.ajax({ url: 'foo/bar', headers: { 'x-my-custom-header': 'some value' } });
为所有内容设置默认标头请求
通过使用 $.ajaxSetup(),您可以建立适用于所有后续 Ajax 请求的默认标头:
$.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 Hook 向每个请求添加标头
将标头应用于所有 Ajax 请求的另一种方法涉及beforeSend 钩子:
$.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 的注意事项:
值得一提的是,ajaxSetup 只允许设置一组默认标头并调用一个 beforeSend 回调。多次 ajaxSetup 调用将导致仅应用最后定义的标头和 beforeSend 函数。
以上是如何使用 JavaScript 和 jQuery 将自定义 HTTP 标头添加到 Ajax 请求?的详细内容。更多信息请关注PHP中文网其他相关文章!