禁止的头部名称

**禁止的请求头名称** 是任何HTTP 请求头的名称,这些名称不能通过编程方式修改;具体来说,是指 HTTP **请求** 头名称(与禁止的响应头名称相对)。

禁止修改此类请求头,因为用户代理完全控制着它们。以Sec-开头的名称保留用于创建新的请求头,以防止API(如fetch())赋予开发人员控制请求头的权限。

禁止的请求头名称以Proxy-Sec-开头,或以下名称之一:

**注意:**根据规范User-Agent请求头不再被禁止(此功能在 Firefox 43 中实现),现在可以在 Fetch 的Headers对象中或通过XMLHttpRequestsetRequestHeader()方法来设置。但是,Chrome 会从 Fetch 请求中静默删除此请求头(请参阅Chromium bug 571722)。

**注意:**虽然Referer请求头在规范中被列为禁止的请求头,但用户代理并不会完全控制它,并且可以对其进行编程修改。例如,当使用fetch()时,可以通过referrer选项以编程方式修改Referer请求头。

另请参阅