Open AndreasBergmeier6176 opened 1 month ago
$ go list -m github.com/ogen-go/ogen
github.com/ogen-go/ogen v1.3.0
Yes
Generate bindings. As a result the following was generated:
if _, ok := r.Header["Content-Type"]; !ok && r.ContentLength == 0 { return req, close, nil } ct, _, err := mime.ParseMediaType(r.Header.Get("Content-Type")) if err != nil { return req, close, errors.Wrap(err, "parse media type") }
Would expect r.Headers to only be accessed via Get due to case insensitivity.
r.Headers
Get
Direct access of r.Header["Content-Type"] which does not handle insensitivity.
r.Header["Content-Type"]
Incoming headers are canonicalized by Go http server, not sure if it is really a problem.
Are you sure this cannot be a problem when writing tests against the API?
What version of ogen are you using?
github.com/ogen-go/ogen v1.3.0
Can this issue be reproduced with the latest version?
Yes
What did you do?
Generate bindings. As a result the following was generated:
What did you expect to see?
Would expect
r.Headers
to only be accessed viaGet
due to case insensitivity.What did you see instead?
Direct access of
r.Header["Content-Type"]
which does not handle insensitivity.