Details
-
Feature Request
-
Resolution: Won't Do
-
Major
-
None
-
None
-
None
-
Undefined
Description
rfc2616 states that
Field names are case-insensitive
When switching a kubernetes app's ingress layer to istio recently, I had the surprise that istio normalizes headers by lowercasing them (i.e. no matter the client, the server always received lower cased headers).
I had been walking all headers with exchange.getRequestHeaders() and using the constants like Headers.HOST_STRING and Headers.ACCEPT_STRING but coming up short for "host" and "accept" when those constants are "Host" and "Accept".
Undertow should make it possible for apps to code for headers in a case-insensitive manner or against the normalized, lower-cased versions so that any clients that may take advantage of the case-insensitivity in the rfc.
Relevant: https://www.rfc-editor.org/rfc/rfc9110#name-field-names
Field names are case-insensitive and ought to be registered within the "Hypertext Transfer Protocol (HTTP) Field Name Registry";