[core-http] Add support for headers having original casing during deserialization.#22888
Merged
xirzec merged 2 commits intoAzure:mainfrom Aug 15, 2022
Merged
[core-http] Add support for headers having original casing during deserialization.#22888xirzec merged 2 commits intoAzure:mainfrom
xirzec merged 2 commits intoAzure:mainfrom
Conversation
6 tasks
Collaborator
|
API change check API changes are not detected in this pull request. |
mpodwysocki
approved these changes
Aug 15, 2022
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Packages impacted by this PR
@azure/core-http and its dependents
Issues associated with this PR
Fixes #22881
Describe the problem that is addressed by this PR
node-fetch forces a lowercase normalization of header names coming over the wire, but storage has scenarios where this is undesirable (see #8117).
Until we get storage moved over to the new pipeline, we would like advanced consumers to be able to preserve header casing via a custom
HttpClient.This PR addresses the issue by ensuring we pass the normalized (rather than the original) header casing to the deserialization policy which always hardcodes the lowercase version of the name.
Are there test cases added in this PR? (If not, why?)
Yes! Two new cases, one for normal responses and one for error responses.