XMLHttpRequest:setRequestHeader() 方法
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
io error: No such file or directory (os error 2) (/home/runner/work/yari/yari/mdn/translated-content/files/zh-cn/web/api/xmlhttprequest_api/index.md)
备注: 此特性在 Web Worker(不包括 Service Worker)中可用。
XMLHttpRequest
的 setRequestHeader()
方法设置 HTTP 请求头部的值。此方法必须在 open()
方法和 send()
之间调用。如果多次对同一个请求头赋值,只会生成一个合并了多个值的请求头。
在第一次调用 setRequestHeader()
之后的每次调用,指定文本会附加到存在的标头内容的末尾。
如果没有设置 Accept
标头,则在调用 send()
时,会随请求发送一个类型为 "*/*"
的 Accept
标头。
安全起见,有些禁止修改的标头的值只能由用户代理控制。任何通过前端 JavaScript 代码为其中一个标头设置值的尝试都将被忽略,不会出现警告或错误。
另外,Authorization
HTTP 标头可以添加到请求中,但如果请求被跨源重定向,则会被删除。
备注:
对于自定义字段,在跨域请求时可能遇到“not allowed by Access-Control-Allow-Headers in preflight response”异常,你可能需要在你的服务端设置 Access-Control-Allow-Headers
。
语法
setRequestHeader(header, value)
参数
返回值
无(undefined
)。
规范
Specification |
---|
XMLHttpRequest Standard # the-setrequestheader()-method |
浏览器兼容性
BCD tables only load in the browser