Nome de cabeçalho proibido
Um nome de cabeçalho proibido é o nome de qualquer cabeçalho HTTP que não pode ser modificado programaticamente; especificamente, um nome de cabeçalho de solicitação HTTP (em contraste com um Forbidden response header name).
Modificar esses cabeçalhos é proibido porque o agente do usuário retém o controle total sobre eles. Nomes começando com Sec-
são reservados para criar novos cabeçalhos seguros de APIs usando Fetch que concedem aos desenvolvedores controle sobre cabeçalhos, como XMLHttpRequest
.
Nomes de cabeçalho proibidos começam com Proxy-
ou Sec-
, ou são um dos seguintes nomes:
Accept-Charset
Accept-Encoding
Access-Control-Request-Headers
Access-Control-Request-Method
Connection
Content-Length
Cookie
Cookie2
Date
DNT
Expect
Host
Keep-Alive
Origin
Proxy-
Sec-
Referer
TE
Trailer
Transfer-Encoding
Upgrade
Via
Nota: O cabeçalho User-Agent
não é mais proibido, de acordo com a especificação - consulte a lista de nomes de cabeçalhos proibidos (isso foi implementado no Firefox 43) - agora ele pode ser definido em um objeto e busca de Headers, ou via XHR setRequestHeader().