Return unclosed body to fix localhost redirects #12
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.
Use case scenario:
I'm testing a server locally that serves a 302 redirect. If I curl
localhost:<port>
throughpacproxy
,curl
gives me a warning that theContent-Length
header doesn't match the actual length of content in the response body.Note: Redirects from remote servers seem to work fine. I think
curl
has special logic to slightly shortcut the proxy when you make alocalhost
request -- it sends an absolute URL rather than aCONNECT
request.From the documentation for
net/http.Client
:Since the response's
Body
is closed, no content is relayed, but theContent-Length
header still makes it through, leading to the mismatch.ErrUseLastResponse
didn't exist whenpacproxy
'sCheckRedirect
function was originally written. :)