Misframe

HTTP request case sensitivity

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

Summary

Case-sensitive:

  • HTTP version
  • Method
  • URI path, query, fragment
  • Header field values
  • Body

Case-insensitive:

  • URI scheme
  • URI host
  • Header field name
  • Transfer-coding header value
  • Connection header value
Read these next