Constants

REQUEST_PARAMS

REQUEST_PARAMS = 'request.params'

REQUEST_OPTIONS

REQUEST_OPTIONS = 'request.options'

CURL_OPTIONS

CURL_OPTIONS = 'curl.options'

SSL_CERT_AUTHORITY

SSL_CERT_AUTHORITY = 'ssl.certificate_authority'

DISABLE_REDIRECTS

DISABLE_REDIRECTS = \Guzzle\Http\RedirectPlugin::DISABLE

DEFAULT_SELECT_TIMEOUT

DEFAULT_SELECT_TIMEOUT = 1.0

MAX_HANDLES

MAX_HANDLES = 3

Properties

$defaultHeaders

$defaultHeaders : \Guzzle\Common\Collection

Type

\Guzzle\Common\Collection — Default HTTP headers to set on each request

$userAgent

$userAgent : string

Type

string — The user agent string to set on each request

$baseUrl

$baseUrl : \Guzzle\Http\Url

Type

\Guzzle\Http\Url — Base URL of the client

Methods

getAllEvents()

getAllEvents() : array

Get a list of all of the events emitted from the class

Returns

array

dispatch()

dispatch(string  $eventName, array  $context = array()) : \Guzzle\Common\Event

Helper to dispatch Guzzle events and set the event name on the event

Parameters

string $eventName

Name of the event to dispatch

array $context

Context of the event

Returns

\Guzzle\Common\Event

Returns the created event object

__construct()

__construct(string  $baseUrl = '', array|\Guzzle\Common\Collection  $config = null) 

Parameters

string $baseUrl

Base URL of the web service

array|\Guzzle\Common\Collection $config

Configuration settings

Throws

\Guzzle\Common\Exception\RuntimeException

if cURL is not installed

setConfig()

setConfig(array|\Guzzle\Common\Collection  $config) : self

Set the configuration object to use with the client

Parameters

array|\Guzzle\Common\Collection $config

Parameters that define how the client behaves

Returns

self

getConfig()

getConfig(boolean|string  $key = false) : mixed|\Guzzle\Common\Collection

Get a configuration setting or all of the configuration settings. The Collection result of this method can be modified to change the configuration settings of a client.

A client should honor the following special values:

  • request.options: Associative array of default RequestFactory options to apply to each request
  • request.params: Associative array of request parameters (data values) to apply to each request
  • curl.options: Associative array of cURL configuration settings to apply to each request
  • ssl.certificate_authority: Path a CAINFO, CAPATH, true to use strict defaults, or false to disable verification
  • redirect.disable: Set to true to disable redirects

Parameters

boolean|string $key

Configuration value to retrieve. Set to FALSE to retrieve all values of the client. The object return can be modified, and modifications will affect the client's config.

Returns

mixed|\Guzzle\Common\Collection

setDefaultOption()

setDefaultOption(string  $keyOrPath, mixed  $value) : $this

Set a default request option on the client that will be used as a default for each request

Parameters

string $keyOrPath

request.options key (e.g. allow_redirects) or path to a nested key (e.g. headers/foo)

mixed $value

Value to set

Returns

$this

getDefaultOption()

getDefaultOption(string  $keyOrPath) : mixed|null

Retrieve a default request option from the client

Parameters

string $keyOrPath

request.options key (e.g. allow_redirects) or path to a nested key (e.g. headers/foo)

Returns

mixed|null

setSslVerification()

setSslVerification(string|boolean  $certificateAuthority = true, boolean  $verifyPeer = true, integer  $verifyHost = 2) : self

Set SSL verification options.

Setting $certificateAuthority to TRUE will result in the bundled cacert.pem being used to verify against the remote host.

Alternate certificates to verify against can be specified with the $certificateAuthority option set to the full path to a certificate file, or the path to a directory containing certificates.

Setting $certificateAuthority to FALSE will turn off peer verification, unset the bundled cacert.pem, and disable host verification. Please don't do this unless you really know what you're doing, and why you're doing it.

Parameters

string|boolean $certificateAuthority

bool, file path, or directory path

boolean $verifyPeer

FALSE to stop from verifying the peer's certificate.

integer $verifyHost

Set to 1 to check the existence of a common name in the SSL peer certificate. 2 to check the existence of a common name and also verify that it matches the hostname provided.

Returns

self

createRequest()

createRequest(string  $method = 'GET', string|array  $uri = null, array|\Guzzle\Common\Collection  $headers = null, string|resource|array|\Guzzle\Http\EntityBodyInterface  $body = null, array  $options = array()) : \Guzzle\Http\Message\RequestInterface

Create and return a new {@see RequestInterface} configured for the client.

Use an absolute path to override the base path of the client, or a relative path to append to the base path of the client. The URI can contain the query string as well. Use an array to provide a URI template and additional variables to use in the URI template expansion.

Parameters

string $method

HTTP method. Defaults to GET

string|array $uri

Resource URI.

array|\Guzzle\Common\Collection $headers

HTTP headers

string|resource|array|\Guzzle\Http\EntityBodyInterface $body

Entity body of request (POST/PUT) or response (GET)

array $options

Array of options to apply to the request

Returns

\Guzzle\Http\Message\RequestInterface

getBaseUrl()

getBaseUrl(boolean  $expand = true) : string|null

Get the client's base URL as either an expanded or raw URI template

Parameters

boolean $expand

Set to FALSE to get the raw base URL without URI template expansion

Returns

string|null

setBaseUrl()

setBaseUrl(string  $url) : self

Set the base URL of the client

Parameters

string $url

The base service endpoint URL of the webservice

Returns

self

setUserAgent()

setUserAgent(string  $userAgent, boolean  $includeDefault = false) : self

Set the User-Agent header to be used on all requests from the client

Parameters

string $userAgent

User agent string

boolean $includeDefault

Set to true to prepend the value to Guzzle's default user agent string

Returns

self

getDefaultUserAgent()

getDefaultUserAgent() : string

Get the default User-Agent string to use with Guzzle

Returns

string

get()

get(string|array  $uri = null, array|\Guzzle\Common\Collection  $headers = null, array  $options = array()) : \Guzzle\Http\Message\RequestInterface

Create a GET request for the client

Parameters

string|array $uri

Resource URI

array|\Guzzle\Common\Collection $headers

HTTP headers

array $options

Options to apply to the request. For BC compatibility, you can also pass a string to tell Guzzle to download the body of the response to a particular location. Use the 'body' option instead for forward compatibility.

Returns

\Guzzle\Http\Message\RequestInterface

head()

head(string|array  $uri = null, array|\Guzzle\Common\Collection  $headers = null, array  $options = array()) : \Guzzle\Http\Message\RequestInterface

Create a HEAD request for the client

Parameters

string|array $uri

Resource URI

array|\Guzzle\Common\Collection $headers

HTTP headers

array $options

Options to apply to the request

Returns

\Guzzle\Http\Message\RequestInterface

delete()

delete(string|array  $uri = null, array|\Guzzle\Common\Collection  $headers = null, string|resource|\Guzzle\Http\EntityBodyInterface  $body = null, array  $options = array()) : \Guzzle\Http\Message\EntityEnclosingRequestInterface

Create a DELETE request for the client

Parameters

string|array $uri

Resource URI

array|\Guzzle\Common\Collection $headers

HTTP headers

string|resource|\Guzzle\Http\EntityBodyInterface $body

Body to send in the request

array $options

Options to apply to the request

Returns

\Guzzle\Http\Message\EntityEnclosingRequestInterface

put()

put(string|array  $uri = null, array|\Guzzle\Common\Collection  $headers = null, string|resource|\Guzzle\Http\EntityBodyInterface  $body = null, array  $options = array()) : \Guzzle\Http\Message\EntityEnclosingRequestInterface

Create a PUT request for the client

Parameters

string|array $uri

Resource URI

array|\Guzzle\Common\Collection $headers

HTTP headers

string|resource|\Guzzle\Http\EntityBodyInterface $body

Body to send in the request

array $options

Options to apply to the request

Returns

\Guzzle\Http\Message\EntityEnclosingRequestInterface

patch()

patch(string|array  $uri = null, array|\Guzzle\Common\Collection  $headers = null, string|resource|\Guzzle\Http\EntityBodyInterface  $body = null, array  $options = array()) : \Guzzle\Http\Message\EntityEnclosingRequestInterface

Create a PATCH request for the client

Parameters

string|array $uri

Resource URI

array|\Guzzle\Common\Collection $headers

HTTP headers

string|resource|\Guzzle\Http\EntityBodyInterface $body

Body to send in the request

array $options

Options to apply to the request

Returns

\Guzzle\Http\Message\EntityEnclosingRequestInterface

post()

post(string|array  $uri = null, array|\Guzzle\Common\Collection  $headers = null, array|\Guzzle\Common\Collection|string|\Guzzle\Http\EntityBodyInterface  $postBody = null, array  $options = array()) : \Guzzle\Http\Message\EntityEnclosingRequestInterface

Create a POST request for the client

Parameters

string|array $uri

Resource URI

array|\Guzzle\Common\Collection $headers

HTTP headers

array|\Guzzle\Common\Collection|string|\Guzzle\Http\EntityBodyInterface $postBody

POST body. Can be a string, EntityBody, or associative array of POST fields to send in the body of the request. Prefix a value in the array with the @ symbol to reference a file.

array $options

Options to apply to the request

Returns

\Guzzle\Http\Message\EntityEnclosingRequestInterface

options()

options(string|array  $uri = null, array  $options = array()) : \Guzzle\Http\Message\RequestInterface

Create an OPTIONS request for the client

Parameters

string|array $uri

Resource URI

array $options

Options to apply to the request

Returns

\Guzzle\Http\Message\RequestInterface

send()

send(array|\Guzzle\Http\Message\RequestInterface  $requests) : \Guzzle\Http\Message\Response|array

Sends a single request or an array of requests in parallel

Parameters

array|\Guzzle\Http\Message\RequestInterface $requests

One or more RequestInterface objects to send

Returns

\Guzzle\Http\Message\Response|array —

Returns a single Response or an array of Response objects

setCurlMulti()

setCurlMulti(\Guzzle\Http\Curl\CurlMultiInterface  $curlMulti) : self

Set a curl multi object to be used internally by the client for transferring requests.

Parameters

\Guzzle\Http\Curl\CurlMultiInterface $curlMulti

Multi object

Returns

self

setUriTemplate()

setUriTemplate(\Guzzle\Parser\UriTemplate\UriTemplateInterface  $uriTemplate) : self

Set the URI template expander to use with the client

Parameters

\Guzzle\Parser\UriTemplate\UriTemplateInterface $uriTemplate

URI template expander

Returns

self

getDefaultHeaders()

getDefaultHeaders() 

setDefaultHeaders()

setDefaultHeaders(  $headers) 

Parameters

$headers

preparePharCacert()

preparePharCacert(  $md5Check = true) 

Parameters

$md5Check

extractPharCacert()

extractPharCacert(string  $pharCacertPath) : string

Copies the phar cacert from a phar into the temp directory.

Parameters

string $pharCacertPath

Path to the phar cacert. For example: 'phar://aws.phar/Guzzle/Http/Resources/cacert.pem'

Throws

\RuntimeException

Throws if the phar cacert cannot be found or the file cannot be copied to the temp dir.

Returns

string —

Returns the path to the extracted cacert file.

expandTemplate()

expandTemplate(string  $template, array  $variables = null) : string

Expand a URI template while merging client config settings into the template variables

Parameters

string $template

Template to expand

array $variables

Variables to inject

Returns

string

sendMultiple()

sendMultiple(array  $requests) : array

Send multiple requests in parallel

Parameters

array $requests

Array of RequestInterface objects

Returns

array —

Returns an array of Response objects

prepareRequest()

prepareRequest(\Guzzle\Http\Message\RequestInterface  $request, array  $options = array()) : \Guzzle\Http\Message\RequestInterface

Prepare a request to be sent from the Client by adding client specific behaviors and properties to the request.

Parameters

\Guzzle\Http\Message\RequestInterface $request

Request to prepare for the client

array $options

Options to apply to the request

Returns

\Guzzle\Http\Message\RequestInterface

initSsl()

initSsl() 

Initializes SSL settings