금지된 헤더 이름
금지된 헤더 이름은 프로그래밍 방식으로 수정할 수 없는 HTTP 헤더의 이름입니다. 특히, HTTP 요청 헤더 이름이 이에 해당합니다.(Forbidden response header name (en-US)과 대조됩니다.)
이러한 헤더는 사용자 에이전트가 헤더에 대한 모든 권한을 보유하므로 수정할 수 없습니다. Sec-
로 시작하는 이름은 XMLHttpRequest
와 같이 개발자에게 헤더에 대한 제어 권한을 부여하는 fetch algorithm을 사용하여 API로부터 안전한 새 헤더를 만들기 위해 예약됩니다.
금지된 헤더 이름은 Proxy-
또는 Sec-
로 시작하거나 아래 이름 중 하나입니다.
Accept-Charset
Accept-Encoding
Access-Control-Request-Headers
Access-Control-Request-Method
Connection
Content-Length
Cookie
Date
DNT
Expect
Feature-Policy
(en-US)Host
Keep-Alive
Origin
Proxy-
Sec-
Referer
TE
(en-US)Trailer
(en-US)Transfer-Encoding
Upgrade
(en-US)Via
Note:
User-Agent
(en-US) 헤더는 사양(참고: 금지된 헤더 이름 목록. Firefox 43에서 구현됨)에 따라 더 이상 금지되지 않습니다. 이제 Fetch Headers (en-US) 객체 또는XMLHttpRequest
의 setRequestHeader() 메소드에서 설정할 수 있습니다. 그러나 Chrome은 Fetch 요청에서 이 헤더를 자동으로 삭제합니다(Chromium bug 571722 참조).
같이 보기
Forbidden response header name (en-US) (Glossary)