Class yii\httpclient\Request

Inheritanceyii\httpclient\Request » yii\httpclient\Message » yii\base\Component » yii\base\BaseObject
Implementsyii\base\Configurable
Available since version2.0
Source Code https://github.com/yiisoft/yii2-httpclient/blob/master/Request.php

Request represents HTTP request.

Public Properties

Hide inherited properties

PropertyTypeDescriptionDefined By
$behaviors yii\base\Behavior[] List of behaviors attached to this component. yii\base\Component
$client yii\httpclient\Client Owner client instance. yii\httpclient\Message
$content string Raw body. yii\httpclient\Message
$cookies yii\web\CookieCollection|yii\web\Cookie[] The cookie collection. Note that the type of this property differs in getter and setter. See getCookies() and setCookies() for details. yii\httpclient\Message
$data mixed Content data fields. yii\httpclient\Message
$format string Body format name. yii\httpclient\Message
$fullUrl string Full target URL. yii\httpclient\Request
$headers yii\web\HeaderCollection The header collection. Note that the type of this property differs in getter and setter. See getHeaders() and setHeaders() for details. yii\httpclient\Message
$method string Request method. yii\httpclient\Request
$options array Request options. This property is read-only. yii\httpclient\Request
$outputFile resource yii\httpclient\Request
$url string|array Target URL or URL parameters. yii\httpclient\Request

Public Methods

Hide inherited methods

MethodDescriptionDefined By
__call() Calls the named method which is not a class method. yii\base\Component
__clone() This method is called after the object is created by cloning an existing one. yii\base\Component
__construct() Constructor. yii\base\BaseObject
__get() Returns the value of a component property. yii\base\Component
__isset() Checks if a property is set, i.e. defined and not null. yii\base\Component
__set() Sets the value of a component property. yii\base\Component
__toString() PHP magic method that returns the string representation of this object. yii\httpclient\Message
__unset() Sets a component property to be null. yii\base\Component
addContent() Adds a content part for multi-part content request. yii\httpclient\Request
addCookies() Adds more cookies to the already defined ones. yii\httpclient\Message
addData() Adds data fields to the existing ones. yii\httpclient\Request
addFile() Adds a file for upload as multi-part content. yii\httpclient\Request
addFileContent() Adds a string as a file upload. yii\httpclient\Request
addHeaders() Adds more headers to the already defined ones. yii\httpclient\Message
addOptions() Adds more options to already defined ones. yii\httpclient\Request
afterSend() This method is invoked right after this request is sent. yii\httpclient\Request
attachBehavior() Attaches a behavior to this component. yii\base\Component
attachBehaviors() Attaches a list of behaviors to the component. yii\base\Component
beforeSend() This method is invoked right before this request is sent. yii\httpclient\Request
behaviors() Returns a list of behaviors that this component should behave as. yii\base\Component
canGetProperty() Returns a value indicating whether a property can be read. yii\base\Component
canSetProperty() Returns a value indicating whether a property can be set. yii\base\Component
className() Returns the fully qualified name of this class. yii\base\BaseObject
composeHeaderLines() Composes raw header lines from $headers. yii\httpclient\Request
detachBehavior() Detaches a behavior from the component. yii\base\Component
detachBehaviors() Detaches all behaviors from the component. yii\base\Component
ensureBehaviors() Makes sure that the behaviors declared in behaviors() are attached to this component. yii\base\Component
getBehavior() Returns the named behavior object. yii\base\Component
getBehaviors() Returns all behaviors attached to this component. yii\base\Component
getContent() Returns HTTP message raw content. yii\httpclient\Message
getCookies() Returns the cookie collection. yii\httpclient\Message
getData() Returns the data fields, parsed from raw content. yii\httpclient\Message
getFormat() Returns body format. yii\httpclient\Message
getFullUrl() Returns full target URL, including yii\httpclient\Client::$baseUrl as a string. yii\httpclient\Request
getHeaders() Returns the header collection. yii\httpclient\Message
getMethod() yii\httpclient\Request
getOptions() yii\httpclient\Request
getOutputFile() Gets the outputFile property yii\httpclient\Request
getUrl() Returns target URL. yii\httpclient\Request
hasContent() Checks if content with provided name exists yii\httpclient\Message
hasCookies() Checks of HTTP message contains any cookie. yii\httpclient\Message
hasEventHandlers() Returns a value indicating whether there is any handler attached to the named event. yii\base\Component
hasHeaders() Checks of HTTP message contains any header. yii\httpclient\Message
hasMethod() Returns a value indicating whether a method is defined. yii\base\Component
hasProperty() Returns a value indicating whether a property is defined for this component. yii\base\Component
init() Initializes the object. yii\base\BaseObject
off() Detaches an existing event handler from this component. yii\base\Component
on() Attaches an event handler to an event. yii\base\Component
prepare() Prepares this request instance for sending. yii\httpclient\Request
responseTime() Return the response time in seconds yii\httpclient\Request
send() Sends this request. yii\httpclient\Request
setContent() Sets the HTTP message raw content. yii\httpclient\Message
setCookies() Sets the cookies associated with HTTP message. yii\httpclient\Message
setData() Sets the data fields, which composes message content. yii\httpclient\Request
setFormat() Sets body format. yii\httpclient\Message
setFullUrl() Sets full target URL. yii\httpclient\Request
setHeaders() Sets the HTTP headers associated with HTTP message. yii\httpclient\Message
setMethod() yii\httpclient\Request
setOptions() Following options are supported: - timeout: int, the maximum number of seconds to allow request to be executed. yii\httpclient\Request
setOutputFile() Used with yii\httpclient\CurlTransport to set the file that the transfer should be written to yii\httpclient\Request
setUrl() Sets target URL. yii\httpclient\Request
toString() Returns string representation of this HTTP message. yii\httpclient\Request
trigger() Triggers an event. yii\base\Component

Protected Methods

Hide inherited methods

MethodDescriptionDefined By
defaultFormat() Returns default format name. yii\httpclient\Message

Events

Hide inherited events

EventTypeDescriptionDefined By
EVENT_AFTER_SEND yii\httpclient\RequestEvent An event raised right after request has been sent. yii\httpclient\Request
EVENT_BEFORE_SEND yii\httpclient\RequestEvent An event raised right before sending request. yii\httpclient\Request

Property Details

$fullUrl public property

Full target URL.

public string $fullUrl null
$method public property

Request method.

public string $method null
$options public property

Request options. This property is read-only.

public array $options null
$outputFile public property (available since version 2.0.9)
public resource getOutputFile ( )
public $this setOutputFile ( $file )
$url public property

Target URL or URL parameters.

public string|array $url null

Method Details

addContent() public method

Adds a content part for multi-part content request.

public $this addContent ( $name, $content, $options = [] )
$name string

Part (form input) name.

$content string

Content.

$options array

Content part options, valid options are:

  • contentType - string, part content type
  • fileName - string, name of the uploading file
  • mimeType - string, part content type in case of file uploading
return $this

Self reference.

addData() public method (available since version 2.0.1)

Adds data fields to the existing ones.

public $this addData ( $data )
$data array

Additional content data fields.

return $this

Self reference.

addFile() public method

Adds a file for upload as multi-part content.

See also addContent().

public $this addFile ( $name, $fileName, $options = [] )
$name string

Part (form input) name

$fileName string

Full name of the source file.

$options array

Content part options, valid options are:

  • fileName - string, base name of the uploading file, if not set it base name of the source file will be used.
  • mimeType - string, file mime type, if not set it will be determine automatically from source file.
throws yii\base\InvalidConfigException
addFileContent() public method

Adds a string as a file upload.

See also addContent().

public $this addFileContent ( $name, $content, $options = [] )
$name string

Part (form input) name

$content string

File content.

$options array

Content part options, valid options are:

  • fileName - string, base name of the uploading file.
  • mimeType - string, file mime type, if not set it 'application/octet-stream' will be used.
addOptions() public method

Adds more options to already defined ones.

Please refer to setOptions() on how to specify options.

public $this addOptions ( array $options )
$options array

Additional options

return $this

Self reference.

afterSend() public method (available since version 2.0.1)

This method is invoked right after this request is sent.

The method will invoke yii\httpclient\Client::afterSend() and trigger the EVENT_AFTER_SEND event.

public void afterSend ( $response )
$response yii\httpclient\Response

Received response instance.

beforeSend() public method (available since version 2.0.1)

This method is invoked right before this request is sent.

The method will invoke yii\httpclient\Client::beforeSend() and trigger the EVENT_BEFORE_SEND event.

public void beforeSend ( )
composeHeaderLines() public method

Composes raw header lines from $headers.

Each line will be a string in format: 'header-name: value'.

public array composeHeaderLines ( )
return array

Raw header lines.

getFullUrl() public method

Returns full target URL, including yii\httpclient\Client::$baseUrl as a string.

public string getFullUrl ( )
return string

Full target URL.

getMethod() public method

public string getMethod ( )
return string

Request method

getOptions() public method

public array getOptions ( )
return array

Request options.

getOutputFile() public method (available since version 2.0.9)

Gets the outputFile property

public resource getOutputFile ( )
getUrl() public method

Returns target URL.

public string|array getUrl ( )
return string|array

Target URL or URL parameters

prepare() public method

Prepares this request instance for sending.

This method should be invoked by transport before sending a request. Do not call this method unless you know what you are doing.

public $this prepare ( )
return $this

Self reference.

responseTime() public method (available since version 2.0.12)

Return the response time in seconds

public float responseTime ( )
return float

The seconds elapsed from request to response

send() public method

Sends this request.

public yii\httpclient\Response send ( )
return yii\httpclient\Response

Response instance.

throws yii\httpclient\Exception
setData() public method

Sets the data fields, which composes message content.

public $this setData ( $data )
$data mixed

Content data fields.

return $this

Self reference.

setFullUrl() public method (available since version 2.0.3)

Sets full target URL.

This method can be used during request formatting and preparation. Do not use it for the target URL specification, use setUrl() instead.

public $this setFullUrl ( $fullUrl )
$fullUrl string

Full target URL.

return $this

Self reference.

setMethod() public method

public $this setMethod ( $method )
$method string

Request method

return $this

Self reference.

setOptions() public method

Following options are supported: - timeout: int, the maximum number of seconds to allow request to be executed.

  • proxy: string, URI specifying address of proxy server. (e.g. tcp://proxy.example.com:5100).
  • userAgent: string, the contents of the "User-Agent: " header to be used in a HTTP request.
  • followLocation: bool, whether to follow any "Location: " header that the server sends as part of the HTTP header.
  • maxRedirects: int, the max number of redirects to follow.
  • protocolVersion: float|string, HTTP protocol version.
  • sslVerifyPeer: bool, whether verification of the peer's certificate should be performed.
  • sslCafile: string, location of Certificate Authority file on local filesystem which should be used with the 'sslVerifyPeer' option to authenticate the identity of the remote peer.
  • sslCapath: string, a directory that holds multiple CA certificates.

You may set options using keys, which are specific to particular transport, like [CURLOPT_VERBOSE => true] in case there is a necessity for it.

public $this setOptions ( array $options )
$options array

Request options.

return $this

Self reference.

setOutputFile() public method (available since version 2.0.9)

Used with yii\httpclient\CurlTransport to set the file that the transfer should be written to

See also CURLOPT_FILE.

public $this setOutputFile ( $file )
$file resource
return $this

Self reference.

setUrl() public method

Sets target URL.

public $this setUrl ( $url )
$url string|array

Use a string to represent a URL (e.g. http://some-domain.com, item/list), or an array to represent a URL with query parameters (e.g. ['item/list', 'param1' => 'value1']).

return $this

Self reference.

toString() public method

Returns string representation of this HTTP message.

public string toString ( )
return string

The string representation of this HTTP message.

Event Details

EVENT_AFTER_SEND event of type yii\httpclient\RequestEvent

An event raised right after request has been sent.

EVENT_BEFORE_SEND event of type yii\httpclient\RequestEvent

An event raised right before sending request.