XMLHttpRequest: setRequestHeader() 方法
注意:此功能在 Web Workers 中可用,但 Service Workers 除外。
XMLHttpRequest 的 setRequestHeader() 方法用于设置 HTTP 请求头的值。使用 setRequestHeader() 时,你必须在调用 open() 之后、调用 send() 之前调用它。如果使用相同的请求头多次调用 setRequestHeader(),则这些值将被合并成一个单独的请求头。
每次在第一次调用 setRequestHeader() 之后再次调用它,指定文本都会被追加到现有请求头内容的末尾。
如果尚未通过此方法设置 Accept 请求头,则在调用 send() 时,请求将附带一个类型为 "*/*" 的 Accept 请求头。
出于安全原因,存在一些由用户代理控制值的禁止的请求头。任何尝试从前端 JavaScript 代码为这些请求头之一设置值的操作都将被忽略,不会发出警告或错误。
此外,可以在请求中添加 Authorization HTTP 请求头,但如果请求被重定向到其他源,该请求头将被移除。
注意: 当你跨域发送请求时,对于自定义字段,你可能会遇到“在预检响应中被 Access-Control-Allow-Headers 禁止”的异常。在这种情况下,你需要在服务器端的响应头中设置 Access-Control-Allow-Headers。