denandz/glorp

net/http header canonicalization modifying responses

Opened this issue · 2 comments

net/http implements transparent header canonicalization when reading to / writing from the headers object. Meaning if a server sends x-some-header, martian (and net/http) will transparently change that to X-Some-Header.

This breaks clients which are not RFC compliant and introduces traffic mutation for what should be a transparent intercepting proxy.

More information is available in the Go issue: golang/go#37834

Partially addressed by commit 36a42ba