49

Perhaps I'm skimming too fast, but couldn't find this specifically documented. In my particular case, I'm wondering about the "Content-Type" header, but I'm assuming the same rules would apply to other standard headers.

Are these case sensitive, and if so: Is it Content-Type or Content-type?

Is there a proper place to reference these?

anonymous coward
  • 12,594
  • 13
  • 55
  • 97

2 Answers2

61

Case-insensitive.

Hypertext Transfer Protocol -- HTTP/1.1:

4.2 Message Headers

HTTP header fields, which include general-header (section 4.5), request-header (section 5.3), response-header (section 6.2), and entity-header (section 7.1) fields, follow the same generic format as that given in Section 3.1 of RFC 822 [9]. Each header field consists of a name followed by a colon (":") and the field value. Field names are case-insensitive.

Roman R.
  • 68,205
  • 6
  • 94
  • 158
25

Looks like the MIME type in a Content-type header value is case-insensitive, so application/PDF and application/pdf are equivalent. It does say parameter values are case-sensitive, so technically "text/html; charset=UTF-8" is not equivalent to "text/html; charset=utf-8". But that's not a good example because http://www.w3.org/TR/html4/charset.html#h-5.2.1 says "Names for character encodings are case-insensitive".

http://www.w3.org/Protocols/rfc1341/4_Content-Type.html

The type, subtype, and parameter names are not case sensitive. For example, TEXT, Text, and TeXt are all equivalent. Parameter values are normally case sensitive, but certain parameters are interpreted to be case- insensitive, depending on the intended use. (For example, multipart boundaries are case-sensitive, but the "access- type" for message/External-body is not case-sensitive.)

jamshid
  • 1,775
  • 17
  • 14
  • 4
    Note that RFC 1341 has been obsoleted by RFC 2045. However the text relating to case sensitivity quoted from RFC 1341 doesn't seem to have changed in RFC 2045. – Simon Elms Dec 21 '16 at 10:23
  • 1
    @SimonTewsi I couldn't find this info in RFC 2045. It seems [RFC 7231 section 3.1.1.1](https://tools.ietf.org/html/rfc7231#section-3.1.1.1) is the correct one. – Arend v. Reinersdorff May 04 '18 at 07:14
  • 1
    @Arendv.Reinersdorff: See [RFC 2045 section 5.1, Syntax of the Content-Type Header Field](https://tools.ietf.org/html/rfc2045#section-5.1). It's on the second page of the section. – Simon Elms May 05 '18 at 10:37
  • 1
    @SimonTewsi Thanks for pointing it out, I missed it :-) – Arend v. Reinersdorff May 06 '18 at 12:22