Thanks to visit codestin.com
Credit goes to github.com

Skip to content

[HttpClient] Fix sending content-length when streaming the body #45998

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Apr 12, 2022

Conversation

nicolas-grekas
Copy link
Member

Q A
Branch? 4.4
Bug fix? yes
New feature? no
Deprecations? no
Tickets Fix #45965
License MIT
Doc PR -

Follows #45906 and previous PRs on the topic.

This PR partly reverts previous changes but keeps tests added to cover how we manage content-related headers when redirecting.

Relying on curl doesn't work in all cases, so we need to manage them on our own.

@fabpot
Copy link
Member

fabpot commented Apr 12, 2022

Thank you @nicolas-grekas.

@fabpot fabpot merged commit 65d19bd into symfony:4.4 Apr 12, 2022
@nicolas-grekas nicolas-grekas deleted the hc-length branch April 14, 2022 10:37
This was referenced Apr 27, 2022
@Gregoire-M
Copy link

For the record, I had strange and random HTTP errors that I could not explain with symfony/http-client v5.4.7 (like HTTP/2 stream 0 was not closed cleanly: INTERNAL_ERROR (err 2)). Internet says it can be related to content-length header.

Upgrading to 5.4.9 has fixed the issue, thanks to this PR I think. So thank you @nicolas-grekas!

nicolas-grekas added a commit that referenced this pull request Jan 13, 2023
…as-grekas)

This PR was merged into the 5.4 branch.

Discussion
----------

[HttpClient] Let curl handle content-length headers

| Q             | A
| ------------- | ---
| Branch?       | 5.4
| Bug fix?      | yes
| New feature?  | no
| Deprecations? | no
| Tickets       | Fix #47973, #46499, #46823
| License       | MIT
| Doc PR        | -

I'm not sure why (maybe some older and buggy curl versions?) but it looks like curl might send content-length headers to proxies.

This didn't happen before #45261 so I'm trying to use curl in the same was as we did by the time, aka letting it handle content-length header when possible.

This is something that I already attempted in #45814 but was partly reverted in #45998. The attached patch is free from such issue.

Commits
-------

5b27dc2 [HttpClient] Let curl handle content-length headers
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants