This class is a transparent base class for Request_Client_HTTP and
should not be accessed directly.

Request_Client_External HTTP driver performs external requests using the
php-http extension. To use this driver, ensure the following is completed
before executing an external request- ideally in the application bootstrap.

Getter/Setter for the callback_params array, which allows additional
application-specific parameters to be shared with callbacks.

As with other Kohana setter/getters, usage is:

// Set full array
$client->callback_params(array('foo'=>'bar'));
// Set single key
$client->callback_params('foo','bar');
// Get full array
$params = $client->callback_params();
// Get single key
$foo = $client->callback_params('foo');

Accepts an array with HTTP response headers as keys and a PHP callback
function as values. These callbacks will be triggered if a response contains
the given header and can either issue a subsequent request or manipulate
the response as required.

This protects the main execution from recursive callback execution (eg
following infinite redirects, conflicts between callbacks causing loops
etc). Requests will only be allowed to nest to the level set by this
param before execution is aborted with a Request_Client_Recursion_Exception.

Parameters

int$depth = NULL - Maximum number of callback requests to execute before aborting

HTTP/1.1 specifies that a 302 redirect should be followed using the
original request method. However, the vast majority of clients and servers
get this wrong, with 302 widely used for 'POST - 302 redirect - GET' patterns.
By default, Kohana's client is fully compliant with the HTTP spec. Some
non-compliant third party sites may require that strict_redirect is set
FALSE to force the client to switch to GET following a 302 response.

Parameters

bool$strict_redirect = NULL - Boolean indicating if 302 redirects should be followed with the original method