HTTP 标头 |访问控制请求标头
Access-Control-Request-Headers是浏览器使用的请求类型标头,其中包含有关客户端将在随后的请求中发送的不同 HTTP 标头的信息。每当客户端向服务器发起请求时,浏览器都会检查该请求是否需要 CORS 预检。如果需要 CORS 预检请求,浏览器会使用 HTTP 选项方法发送一个请求,该请求附带一堆标头,其中包含有关随后请求的某些特征的信息。这些特征之一是请求可能包含的不同标头。此信息存储在预检请求的 Access-Control-Request-Headers 标头中。
句法:
Access-Control-Request-Headers: header-name-1, header-name-2, ...
指令: Access-Control-Request-Headers 标头接受如上所述和如下所述的单个指令:
- header-name:将附加到后续请求的标头名称的逗号分隔列表。
下面的示例说明了 http 标头中的Access-Control-Request-Headers 。
示例:考虑以下代码以从浏览器发送 XHR 请求。
const xhr = new XMLHttpRequest();
xhr.open('POST', 'https://samplepostroute/');
xhr.setRequestHeader('X-PINGOTHER', 'pingpong');
xhr.setRequestHeader('Content-Type',
'application/x-www-form-urlencoded');
xhr.onreadystatechange = handler;
xhr.send("id=100");
该请求将包含 Content-Type 和 X-PINGOTHER HTTP 标头。在发送 POST 请求之前,浏览器会发送一个 CORS 预检请求。 CORS 预检请求将包含以下标头。以这种方式,服务器被告知可能出现在随后的客户端请求中的不同标头。
Access-Control-Request-Headers: X-PINGOTHER, Content-Type
支持的浏览器:以下浏览器与 Access-Control-Request-Headers 标头功能兼容:
- 谷歌浏览器 4.0
- 火狐浏览器 3.5
- 互联网浏览器 10.0
- 歌剧 12.0
- 野生动物园 4.0