You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
minor #45566 [HttpClient] Handle requests with null body (jderusse)
This PR was merged into the 4.4 branch.
Discussion
----------
[HttpClient] Handle requests with null body
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | /
| License | MIT
| Doc PR | /
since #45527 passing null to the `body` parameters leads to an exception (which [breaks async-aws](https://github.com/async-aws/aws/blob/09723ddca29b8d1d522426f81dd422373de1785f/src/Core/src/AbstractApi.php#L157))
> Argument #2 ($body) must be of type Closure, null given, called in /home/runner/work/aws/aws/vendor/symfony/http-client/CurlHttpClient.php on line 221
In curl client: `null` is not a string and `self::readRequestBody` expects a closure.
https://github.com/symfony/symfony/blob/08fa74a16c84895575e305b2a7ee3a03e371f79b/src/Symfony/Component/HttpClient/CurlHttpClient.php#L214-L221
In NativeClient, `getBodyAsString` will fail to return `null` because of the `string` return type.
Before #45527 null was converted to `""` thanks to the defaultOptions, but this is not the case anymore.
In many places, we check if the body is `!== ""` but rarely check if the body is null, this PR restores the original behaviors for the `body` parameters and converts nulls to `""`.
Commits
-------
39aec09 [HttpClient] Handle requests with null body
0 commit comments