Class Stream
Implements sending Cake\Http\Client\Request via php's stream API.
This approach and implementation is partly inspired by Aura.Http
- Cake\Http\Client\Adapter\Stream implements Cake\Http\Client\AdapterInterface
Properties summary
-
$_connectionErrors
protectedarray
Connection error list. -
$_context
protectedresource|null
Context resource used by the stream API. -
$_contextOptions
protectedarray
Array of options/content for the HTTP stream context. -
$_sslContextOptions
protectedarray
Array of options/content for the SSL stream context. -
$_stream
protectedresource|null
The stream resource.
Method Summary
-
_buildContent() protected
Builds the request content based on the request object. -
_buildContext() protected
Build the stream context out of the request object. -
_buildHeaders() protected
Build the header context for the request. -
_buildOptions() protected
Build miscellaneous options for the request. -
_buildResponse() protected
Build a response object -
_buildSslContext() protected
Build SSL options for the request. -
_open() protected
Open the socket and handle any connection errors. -
_send() protected
Open the stream and send the request. -
contextOptions() public
Get the context options -
createResponses() public
Create the response list based on the headers & content -
send() public
Send a request and get a response back.
Method Detail
_buildContent() protected ¶
_buildContent( Cake\Http\Client\Request
$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
-
Cake\Http\Client\Request
$request - The request being sent.
- array $options
- Array of options to use.
_buildContext() protected ¶
_buildContext( Cake\Http\Client\Request
$request , array $options )
Build the stream context out of the request object.
Parameters
-
Cake\Http\Client\Request
$request - The request to build context from.
- array $options
- Additional request options.
_buildHeaders() protected ¶
_buildHeaders( Cake\Http\Client\Request
$request , array $options )
Build the header context for the request.
Creates cookies & headers.
Parameters
-
Cake\Http\Client\Request
$request - The request being sent.
- array $options
- Array of options to use.
_buildOptions() protected ¶
_buildOptions( Cake\Http\Client\Request
$request , array $options )
Build miscellaneous options for the request.
Parameters
-
Cake\Http\Client\Request
$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
_buildSslContext() protected ¶
_buildSslContext( Cake\Http\Client\Request
$request , array $options )
Build SSL options for the request.
Parameters
-
Cake\Http\Client\Request
$request - The request being sent.
- array $options
- Array of options to use.
_open() protected ¶
_open( string $url )
Open the socket and handle any connection errors.
Parameters
- string $url
- The url to connect to.
Throws
_send() protected ¶
_send( Cake\Http\Client\Request
$request )
Open the stream and send the request.
Parameters
-
Cake\Http\Client\Request
$request - The request object.
Returns
Array of populated Response objects
Throws
contextOptions() public ¶
contextOptions( )
Get the context options
Useful for debugging and testing context creation.
Returns
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
send() public ¶
send( Cake\Http\Client\Request
$request , array $options )
Send a request and get a response back.
Parameters
-
Cake\Http\Client\Request
$request - The request object to send.
- array $options
- Array of options for the stream.