Config headers to not be capitalized
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 35/100
Research direction
Start at the Net::HTTP.new entry point and inspect how request headers are currently capitalized. Define the configuration behavior so the default remains unchanged while an enabled option preserves supplied header casing, then verify the existing header behavior and the new option.
Written by the indexing model from the issue text.
Description
Context
I am consuming a API that have case sensitive header keys.
It is not common to see an case-sensitive header and also is off the specification. But sometimes it is off our control.
What I have in mind is some config to making possible to prevent the capitalize behavior and pass the header without changing it. Something like this:
http = Net::HTTP.new(endpoint.host, endpoint.port)
http.preserve_headers = true
The default behavior will remain the same, the idea is only change the behavior if this config are true.
Some workaround I can do is making a monkeypath to prevent the capitalization, but I thing it make sense to have this configuration.
I can try to implement it, but I want to know if make sense for Net::HTTP.
- Dominant language
- Ruby
- Stars
- 148
- Forks
- 95
- Avg merge
- 10h 54m
- Merged PRs (30d)
- 4
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from ruby/net-http
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
-
Difficulty 5/5 Over a week Newbie friendliness 38/100
-
Difficulty 4/5 3-5 days Newbie friendliness 55/100
-
Difficulty 4/5 3-5 days Newbie friendliness 55/100
Similar issues
-
SyncEm always forwards a dummy block, so wrapped methods lose their no-block/Enumerator behavior Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
endoflife-date/endoflife.date#11086 ·
-
internal
Difficulty 1/5 Under an hour Newbie friendliness 88/100
Kong/developer.konghq.com#7322 ·
-
bug P2
Difficulty 2/5 1-3 hours Newbie friendliness 88/100