- added
AsyncDecoratorTrait
to ease processing responses without breaking async - added support for pausing responses with a new
pause_handler
callable exposed as an info item - added
StreamableInterface
to ease turning responses into PHP streams - added
MockResponse::getRequestMethod()
andgetRequestUrl()
to allow inspecting which request has been sent - added
EventSourceHttpClient
a Server-Sent events stream implementing the EventSource specification - added option "extra.curl" to allow setting additional curl options in
CurlHttpClient
- added
RetryableHttpClient
to automatically retry failed HTTP requests. - added
extra.trace_content
option toTraceableHttpClient
to prevent it from keeping the content in memory
- added
NoPrivateNetworkHttpClient
decorator - added
AmpHttpClient
, a portable HTTP/2 implementation based on Amp - added
LoggerAwareInterface
toScopingHttpClient
andTraceableHttpClient
- made
HttpClient::create()
return anAmpHttpClient
whenamphp/http-client
is found but curl is not or too old
- added
canceled
toResponseInterface::getInfo()
- added
HttpClient::createForBaseUri()
- added
HttplugClient
with support for sync and async requests - added
max_duration
option - added support for NTLM authentication
- added
StreamWrapper
to cast anyResponseInterface
instances to PHP streams. - added
$response->toStream()
to cast responses to regular PHP streams - made
Psr18Client
implement relevant PSR-17 factories and have streaming responses - added
TraceableHttpClient
,HttpClientDataCollector
andHttpClientPass
to integrate with the web profiler - allow enabling buffering conditionally with a Closure
- allow option "buffer" to be a stream resource
- allow arbitrary values for the "json" option
- added the component