Класс yii\httpclient\Client
| Наследование | yii\httpclient\Client » yii\base\Component » yii\base\Object |
|---|---|
| Реализует | yii\base\Configurable |
| Доступно с версии | 2.0 |
| Исходный код | https://github.com/yiisoft/yii2-httpclient/blob/master/Client.php |
Client предоставляет высокоуровневый интерфейс для выполнения HTTP-запросов.
Публичные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| $baseUrl | строка | Базовый URL запроса. | yii\httpclient\Client |
| $behaviors | yii\base\Behavior[] | Список поведений, прикрепленных к этому компоненту | yii\base\Component |
| $contentLoggingMaxSize | целое число | Максимальное количество символов содержимого запроса, которое должно быть взято для составления сообщений журнала и профилирования. | yii\httpclient\Client |
| $formatters | массив | Форматизаторы для преобразования данных в содержимое указанного \yii\httpclient\format. | yii\httpclient\Client |
| $parsers | массив | Парсеры для преобразования содержимого указанного \yii\httpclient\format в данные. | yii\httpclient\Client |
| $requestConfig | массив | Конфигурация объекта запроса. | yii\httpclient\Client |
| $responseConfig | массив | Конфигурация ответа. | yii\httpclient\Client |
| $transport | yii\httpclient\Transport|массив|строка | Транспорт HTTP-сообщения | yii\httpclient\Client |
Публичные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает именованный метод, который не является методом класса. | yii\base\Component |
| __clone() | Этот метод вызывается после создания объекта путём клонирования существующего. | yii\base\Component |
| __construct() | Конструктор. | yii\base\Object |
| __get() | Возвращает значение свойства компонента. | yii\base\Component |
| __isset() | Проверяет, установлено ли свойство, т.е. определено и не равно null. | yii\base\Component |
| __set() | Устанавливает значение свойства компонента. | yii\base\Component |
| __unset() | Устанавливает свойство компонента в null. | yii\base\Component |
| afterSend() | Этот метод вызывается сразу после отправки запроса. | yii\httpclient\Client |
| attachBehavior() | Прикрепляет поведение к этому компоненту. | yii\base\Component |
| attachBehaviors() | Прикрепляет список поведений к компоненту. | yii\base\Component |
| batchSend() | Выполняет несколько HTTP-запросов параллельно. | yii\httpclient\Client |
| beforeSend() | Этот метод вызывается непосредственно перед отправкой запроса. | yii\httpclient\Client |
| behaviors() | Возвращает список поведений, по которым должен действовать этот компонент. | yii\base\Component |
| canGetProperty() | Возвращает значение, указывающее, можно ли прочитать свойство. | yii\base\Component |
| canSetProperty() | Возвращает значение, указывающее, можно ли установить свойство. | yii\base\Component |
| className() | Возвращает полное квалифицированное имя этого класса. | yii\base\Object |
| createRequest() | yii\httpclient\Client | |
| createRequestLogToken() | Составляет маркер сообщения журнала/профилирования для заданных параметров HTTP-запроса. | yii\httpclient\Client |
| createResponse() | Создаёт экземпляр ответа. | yii\httpclient\Client |
| delete() | Создаёт запрос 'DELETE'. | yii\httpclient\Client |
| detachBehavior() | Открепляет поведение от компонента. | yii\base\Component |
| detachBehaviors() | Открепляет все поведения от компонента. | yii\base\Component |
| ensureBehaviors() | Убеждается, что поведения, объявленные в behaviors(), прикреплены к этому компоненту. | yii\base\Component |
| get() | Создаёт запрос 'GET'. | yii\httpclient\Client |
| getBehavior() | Возвращает объект именованного поведения. | yii\base\Component |
| getBehaviors() | Возвращает все поведения, прикреплённые к этому компоненту. | yii\base\Component |
| getFormatter() | Возвращает экземпляр форматировщика HTTP-сообщений для указанного формата. | yii\httpclient\Client |
| getParser() | Возвращает экземпляр парсера HTTP-сообщений для указанного формата. | yii\httpclient\Client |
| getTransport() | yii\httpclient\Client | |
| hasEventHandlers() | Возвращает значение, указывающее, есть ли обработчик, прикреплённый к указанному событию. | yii\base\Component |
| hasMethod() | Возвращает значение, указывающее, определён ли метод. | yii\base\Component |
| hasProperty() | Возвращает значение, указывающее, определено ли свойство для этого компонента. | yii\base\Component |
| head() | Создаёт запрос 'HEAD'. | yii\httpclient\Client |
| init() | Инициализирует объект. | yii\base\Object |
| off() | Открепляет существующий обработчик событий от этого компонента. | yii\base\Component |
| on() | Прикрепляет обработчик событий к событию. | yii\base\Component |
| options() | Создаёт запрос 'OPTIONS'. | yii\httpclient\Client |
| patch() | Создаёт запрос 'PATCH'. | yii\httpclient\Client |
| post() | Создаёт запрос 'POST'. | yii\httpclient\Client |
| put() | Создаёт запрос 'PUT'. | yii\httpclient\Client |
| send() | Выполняет данный запрос. | yii\httpclient\Client |
| setTransport() | Устанавливает транспорт HTTP-сообщений. Он может быть указан в одном из следующих форматов: | yii\httpclient\Client |
| trigger() | Вызывает событие. | yii\base\Component |
События
| Событие | Тип | Описание | Определено в |
|---|---|---|---|
| EVENT_AFTER_SEND | yii\httpclient\RequestEvent | Событие, генерируемое сразу после отправки запроса. | yii\httpclient\Client |
| EVENT_BEFORE_SEND | yii\httpclient\RequestEvent | Событие, генерируемое непосредственно перед отправкой запроса. | yii\httpclient\Client |
Константы
| Константа | Значение | Описание | Определено в |
|---|---|---|---|
| FORMAT_JSON | 'json' | Формат JSON | yii\httpclient\Client |
| FORMAT_RAW_URLENCODED | 'raw-urlencoded' | Кодировка в формате строки запроса, закодированная PHP_QUERY_RFC3986, например, name1=value1&name2=value2 | yii\httpclient\Client |
| FORMAT_URLENCODED | 'urlencoded' | Кодировка в формате строки запроса, закодированная RFC1738, например, name1=value1&name2=value2 | yii\httpclient\Client |
| FORMAT_XML | 'xml' | Формат XML | yii\httpclient\Client |
Подробное описание свойств
$baseUrl общедоступное свойство
Базовый URL запроса.
public string $baseUrl = null
$contentLoggingMaxSize public property
Максимальное количество символов содержимого запроса, которое должно быть взято для составления сообщений журнала и профиля. Превышающее содержимое будет усечено.
См. также createRequestLogToken().
public integer $contentLoggingMaxSize = 2000
$formatters public property
Форматировщики для преобразования данных в содержимое указанного \yii\httpclient\format. Ключи массива — имена форматов, а значения массива — соответствующие конфигурации для создания объектов форматировщика.
public array $formatters = []
$parsers public property
Парсеры для преобразования содержимого указанного \yii\httpclient\format в данные. Ключи массива — имена форматов, а значения массива — соответствующие конфигурации для создания объектов парсера.
public array $parsers = []
$requestConfig public property
Конфигурация объекта запроса.
public array $requestConfig = []
$responseConfig public property
Конфигурация ответа.
public array $responseConfig = []
$transport public property
Транспорт HTTP-сообщения
public yii\httpclient\Transport getTransport ( )
public void setTransport ( $transport )
Подробное описание методов
afterSend() public method (available since version 2.0.1)
Этот метод вызывается сразу после отправки запроса.
Метод вызовет событие EVENT_AFTER_SEND.
| public void afterSend ( $request, $response ) | ||
|---|---|---|
| $request | yii\httpclient\Request |
Экземпляр запроса. |
| $response | yii\httpclient\Response |
Экземпляр полученного ответа. |
batchSend() public method
Выполняет несколько HTTP-запросов параллельно.
Этот метод принимает массив объектов yii\httpclient\Request и возвращает массив объектов yii\httpclient\Response. Ключи массива ответов соответствуют ключам массива запросов.
$client = new Client();
$requests = [
'news' => $client->get('http://domain.com/news'),
'friends' => $client->get('http://domain.com/user/friends', ['userId' => 12]),
];
$responses = $client->batchSend($requests);
var_dump($responses['news']->isOk);
var_dump($responses['friends']->isOk);
| public yii\httpclient\Response[] batchSend ( array $requests ) | ||
|---|---|---|
| $requests | yii\httpclient\Request[] |
Запросы для выполнения. |
| return | yii\httpclient\Response[] |
Список ответов. |
beforeSend() public method (available since version 2.0.1)
Этот метод вызывается непосредственно перед отправкой запроса.
Метод вызовет событие EVENT_BEFORE_SEND.
| public void beforeSend ( $request ) | ||
|---|---|---|
| $request | yii\httpclient\Request |
Экземпляр запроса. |
createRequest() public method
| public yii\httpclient\Request createRequest ( ) | ||
|---|---|---|
| return | yii\httpclient\Request |
Экземпляр запроса. |
createRequestLogToken() public method
Компонует маркер сообщения журнала/профилирования для заданных параметров HTTP-запроса.
Этот метод должен использоваться транспортными средствами при ведении журнала отправки запросов.
| public string createRequestLogToken ( $method, $url, $headers, $content ) | ||
|---|---|---|
| $method | string |
Имя метода запроса. |
| $url | string |
URL запроса. |
| $headers | array |
Заголовки запроса. |
| $content | string |
Содержание запроса. |
| return | string |
Маркер журнала. |
createResponse() public method
Создаёт экземпляр ответа.
| public yii\httpclient\Response createResponse ( $content = null, array $headers = [] ) | ||
|---|---|---|
| $content | string |
Исходное содержимое |
| $headers | array |
Список заголовков. |
| return | yii\httpclient\Response |
Экземпляр запроса. |
delete() public method
Создаёт запрос 'DELETE'.
| public yii\httpclient\Request delete ( $url, $data = null, $headers = [], $options = [] ) | ||
|---|---|---|
| $url | string |
Целевой URL. |
| $data | array|string |
Если массив - данные запроса, иначе - содержимое запроса. |
| $headers | array |
Заголовки запроса. |
| $options | array |
Параметры запроса. |
| return | yii\httpclient\Request |
Экземпляр запроса. |
get() public method
Создаёт запрос 'GET'.
| public yii\httpclient\Request get ( $url, $data = null, $headers = [], $options = [] ) | ||
|---|---|---|
| $url | string |
Целевой URL. |
| $data | array|string |
Если массив - данные запроса, иначе - содержимое запроса. |
| $headers | array |
Заголовки запроса. |
| $options | array |
Параметры запроса. |
| return | yii\httpclient\Request |
Экземпляр запроса. |
getFormatter() public method
Возвращает экземпляр форматировщика HTTP-сообщений для указанного формата.
| public yii\httpclient\FormatterInterface getFormatter ( $format ) | ||
|---|---|---|
| $format | string |
Имя формата. |
| return | yii\httpclient\FormatterInterface |
Экземпляр форматировщика. |
| throws | yii\base\InvalidParamException |
при неверном имени формата. |
getParser() public method
Возвращает экземпляр парсера HTTP-сообщений для указанного формата.
| public yii\httpclient\ParserInterface getParser ( $format ) | ||
|---|---|---|
| $format | string |
Имя формата |
| return | yii\httpclient\ParserInterface |
Экземпляр парсера. |
| throws | yii\base\InvalidParamException |
при неверном имени формата. |
getTransport() public method
| public yii\httpclient\Transport getTransport ( ) | ||
|---|---|---|
| return | yii\httpclient\Transport |
Экземпляр транспортного средства HTTP-сообщений. |
head() public method
Создаёт запрос 'HEAD'.
| public yii\httpclient\Request head ( $url, $headers = [], $options = [] ) | ||
|---|---|---|
| $url | string |
Целевой URL. |
| $headers | array |
Заголовки запроса. |
| $options | array |
Параметры запроса. |
| return | yii\httpclient\Request |
Экземпляр запроса. |
options() public method
Создаёт запрос 'OPTIONS'.
| public yii\httpclient\Request options ( $url, $options = [] ) | ||
|---|---|---|
| $url | string |
Целевой URL. |
| $options | array |
Параметры запроса. |
| return | yii\httpclient\Request |
Экземпляр запроса. |
patch() public method
Создаёт запрос 'PATCH'.
| public yii\httpclient\Request patch ( $url, $data = null, $headers = [], $options = [] ) | ||
|---|---|---|
| $url | string |
Целевой URL. |
| $data | array|string |
Если массив — данные запроса, в противном случае — содержимое запроса. |
| $headers | array |
Заголовки запроса. |
| $options | array |
Параметры запроса. |
| return | yii\httpclient\Request |
Экземпляр запроса. |
post() public method
Создаёт запрос 'POST'.
| public yii\httpclient\Request post ( $url, $data = null, $headers = [], $options = [] ) | ||
|---|---|---|
| $url | string |
Целевой URL. |
| $data | array|string |
Если массив — данные запроса, в противном случае — содержимое запроса. |
| $headers | array |
Заголовки запроса. |
| $options | array |
Параметры запроса. |
| return | yii\httpclient\Request |
Экземпляр запроса. |
put() public method
Создаёт запрос 'PUT'.
| public yii\httpclient\Request put ( $url, $data = null, $headers = [], $options = [] ) | ||
|---|---|---|
| $url | string |
Целевой URL. |
| $data | array|string |
Если массив — данные запроса, в противном случае — содержимое запроса. |
| $headers | array |
Заголовки запроса. |
| $options | array |
Параметры запроса. |
| return | yii\httpclient\Request |
Экземпляр запроса. |
send() public method
Выполняет заданный запрос.
| public yii\httpclient\Response send ( $request ) | ||
|---|---|---|
| $request | yii\httpclient\Request |
Отправляемый запрос. |
| return | yii\httpclient\Response |
Экземпляр ответа. |
| throws | yii\httpclient\Exception |
при ошибке. |
setTransport() public method
Устанавливает транспорт HTTP-сообщений. Он может быть задан в одной из следующих форм:
- экземпляр
Transport: фактический объект транспорта, который будет использоваться - строка: представляющая имя класса объекта, который будет создан
- массив конфигурации: массив должен содержать элемент
class, который обрабатывается как класс объекта, а остальные пары имя-значение будут использованы для инициализации соответствующих свойств объекта - вызов PHP: либо анонимная функция, либо массив, представляющий метод класса (
[$class or $object, $method]). Вызываемый объект должен возвращать новый экземпляр создаваемого объекта.
| public void setTransport ( $transport ) | ||
|---|---|---|
| $transport | yii\httpclient\Transport|array|string |
Транспорт HTTP-сообщений |
Подробности событий
EVENT_AFTER_SEND событие типа yii\httpclient\RequestEvent
Событие, генерируемое сразу после отправки запроса.
EVENT_BEFORE_SEND событие типа yii\httpclient\RequestEvent
Событие, генерируемое непосредственно перед отправкой запроса.
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-httpclient-client.html