I only recently learned that HTTP methods are case-sensitive. In order to save myself from future debugging headaches, I decided to do a quick search to see what else is case-sensitive.
This is what the RFC says. Real applications may treat things differently!
Case sensitive? | Component | Reference |
---|---|---|
✅ | HTTP version | RFC |
✅ | Method | RFC |
❌ | URI scheme | RFC |
❌ | URI host | RFC |
✅ | URI path, query, fragment | RFC |
❌ | Header field name | RFC |
✅ | Header field values | Not explicit in the RFC. See below for some exceptions. |
❌ | Transfer-coding header value |
RFC |
❌ | Connection header value |
RFC |
✅ | Body |
Case-sensitive:
Case-insensitive:
Transfer-coding
header valueConnection
header value