XMLHttpRequest:setRequestHeader() 方法

基线 广泛可用

此功能已得到很好的确立,并且可以在许多设备和浏览器版本上运行。它自以下时间起在所有浏览器中都可用 2015 年 7 月.

注意:此功能在 Web 工作线程 中可用,但 服务工作线程 除外。

XMLHttpRequest 方法 setRequestHeader() 设置 HTTP 请求头的值。使用 setRequestHeader() 时,必须在调用 open() 后但调用 send() 之前调用它。如果此方法使用相同的标头多次调用,则这些值将合并为一个请求标头。

每次在第一次调用它之后调用 setRequestHeader() 时,指定的文本都会附加到现有标头内容的末尾。

如果没有使用此方法设置 Accept 标头,则在调用 send() 时,请求将发送类型为 "*/*"Accept 标头。

出于安全原因,有几个 禁止的标头名称 的值由用户代理控制。从前端 JavaScript 代码设置这些标头之一的值的任何尝试都将被忽略,不会发出警告或错误。

此外,可能会将 Authorization HTTP 标头添加到请求中,但如果请求跨域重定向,则会将其删除。

注意:对于自定义字段,当您跨域发送请求时,可能会遇到“预检响应中 Access-Control-Allow-Headers 不允许”异常。在这种情况下,您需要在服务器端响应标头中设置 Access-Control-Allow-Headers

语法

js
setRequestHeader(header, value)

参数

要设置其值的标头的名称。

value

设置为标头正文的值。

返回值

无 (undefined)。

规范

规范
XMLHttpRequest 标准
# the-setrequestheader()-method

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅