Class Stream
Implements sending Cake\Http\Client\Request via php's stream API.
This approach and implementation is partly inspired by Aura.Http
Properties summary
- $_connectionErrors protected
array
Connection error list.
- $_context protected
resource|null
Context resource used by the stream API.
- $_contextOptions protected
array
Array of options/content for the HTTP stream context.
- $_sslContextOptions protected
array
Array of options/content for the SSL stream context.
- $_stream protected
resource|null
The stream resource.
Method Summary
Method Detail
_buildContent() protected
_buildContent(\Psr\Http\Message\RequestInterface $request, array $options)
Builds the request content based on the request object.
If the $request->body() is a string, it will be used as is. Array data will be processed with Cake\Http\Client\FormData
Parameters
-
\Psr\Http\Message\RequestInterface
$request The request being sent.
-
array
$options Array of options to use.
_buildContext() protected
_buildContext(\Psr\Http\Message\RequestInterface $request, array $options)
Build the stream context out of the request object.
Parameters
-
\Psr\Http\Message\RequestInterface
$request The request to build context from.
-
array
$options Additional request options.
_buildHeaders() protected
_buildHeaders(\Psr\Http\Message\RequestInterface $request, array $options)
Build the header context for the request.
Creates cookies & headers.
Parameters
-
\Psr\Http\Message\RequestInterface
$request The request being sent.
-
array
$options Array of options to use.
_buildOptions() protected
_buildOptions(\Psr\Http\Message\RequestInterface $request, array $options)
Build miscellaneous options for the request.
Parameters
-
\Psr\Http\Message\RequestInterface
$request The request being sent.
-
array
$options Array of options to use.
_buildResponse() protected
_buildResponse(array $headers, string $body)
Build a response object
Parameters
-
array
$headers Unparsed headers.
-
string
$body The response body.
Returns
\Cake\Http\Client\Response
_buildSslContext() protected
_buildSslContext(\Psr\Http\Message\RequestInterface $request, array $options)
Build SSL options for the request.
Parameters
-
\Psr\Http\Message\RequestInterface
$request The request being sent.
-
array
$options Array of options to use.
_open() protected
_open(string $url, \Psr\Http\Message\RequestInterface $request)
Open the socket and handle any connection errors.
Parameters
-
string
$url The url to connect to.
-
\Psr\Http\Message\RequestInterface
$request The request object.
Throws
Psr\Http\Client\RequestExceptionInterface
_send() protected
_send(\Psr\Http\Message\RequestInterface $request)
Open the stream and send the request.
Parameters
-
\Psr\Http\Message\RequestInterface
$request The request object.
Returns
array
Array of populated Response objects
Throws
Psr\Http\Client\NetworkExceptionInterface
contextOptions() public
contextOptions()
Get the context options
Useful for debugging and testing context creation.
Returns
array
createResponses() public
createResponses(array $headers, string $content)
Create the response list based on the headers & content
Creates one or many response objects based on the number of redirects that occurred.
Parameters
-
array
$headers The list of headers from the request(s)
-
string
$content The response content.
Returns
\Cake\Http\Client\Response[]
The list of responses from the request(s)
send() public
send(\Psr\Http\Message\RequestInterface $request, array $options)
Send a request and get a response back.
Parameters
-
\Psr\Http\Message\RequestInterface
$request The request object to send.
-
array
$options Array of options for the stream.
Returns
\Cake\Http\Client\Response[]
Array of populated Response objects
Property Detail
$_connectionErrors protected
Connection error list.
Type
array
$_context protected
Context resource used by the stream API.
Type
resource|null
$_contextOptions protected
Array of options/content for the HTTP stream context.
Type
array
$_sslContextOptions protected
Array of options/content for the SSL stream context.
Type
array
$_stream protected
The stream resource.
Type
resource|null
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.1/class-Cake.Http.Client.Adapter.Stream.html