Конструктор внешнего запроса
Открытые члены | |
__construct (string $source_id, string $url) | |
executeRequest () | |
getPreparedHeaders () | |
clearPreparedHeaders () | |
getPreparedContent () | |
setBasicAuth (string $username, string $password) | |
setLog (AbstractLog $log, string $log_level_request, string $log_level_response=null) | |
getSourceId () | |
setSourceId (string $source_id) | |
getUrl () | |
setIgnoreErrors ($bool) | |
getIgnoreErrors () | |
setUrl (string $url) | |
getMethod () | |
setMethod (string $method) | |
getHeaders () | |
setHeaders (array $headers) | |
addHeader (string $name, string $value) | |
getContentType () | |
setContentType (string $content_type) | |
getAuthorization () | |
setAuthorization ($authorization) | |
getParams () | |
setParams ($params) | |
setParam ($key, $value) | |
getTimeout () | |
setTimeout (float $timeout) | |
getIdempotenceKey () | |
setIdempotenceKey (string $idempotence_key) | |
isEnabledCache () | |
setEnableCache (bool $enable_cache=true) | |
getLogOption (string $option_name, $default=null) | |
setLogOption (string $option_name, $value) | |
setEnableLog (bool $enable_log=true) | |
setJsonEncodeFlags ($flags) | |
getJsonEncodeFlags () | |
getRequestHash () | |
setCacheHashFunction ($callable) | |
setExcludeCacheHashParams (array $exclude_hash_params) | |
setCacheResponseStatus (array $list) | |
setCacheLifeTime ($time_sec) | |
getCacheLifeTime () | |
Поля данных | |
const | METHOD_GET = 'GET' |
const | METHOD_POST = 'POST' |
const | METHOD_PUT = 'PUT' |
const | METHOD_PATCH = 'PATCH' |
const | METHOD_DELETE = 'DELETE' |
const | CONTENT_TYPE_FORM_DATA = 'application/x-www-form-urlencoded; charset=utf-8' |
const | CONTENT_TYPE_JSON = 'application/json; charset=utf-8' |
const | CONTENT_TYPE_JSON_WITHOUT_CHARSET = 'application/json' |
const | CONTENT_TYPE_XML = 'application/xml; charset=utf-8' |
const | LOG_OPTION_DONT_WRITE_RESPONSE_BODY = 'dont_write_response_body' |
const | HASH_PARAM_METHOD = 'method' |
const | HASH_PARAM_HEADERS = 'headers' |
const | HASH_PARAM_DATA = 'data' |
Защищенные члены | |
selfCheck () | |
parseResponseStatusFromHeaders ($headers) | |
getRequestUrl () | |
createRequestContext () | |
logTryRequest () | |
logHeaders () | |
logResponse (ExternalResponse $response, float $time_to_response=null, bool $from_cache=false) | |
getLog () | |
__construct | ( | string | $source_id, |
string | $url | ||
) |
string | $source_id | - идентификатор инициатора запроса |
string | $url | - URL запроса Исключение ExternalRequestException оставлено на ручной контроль |
addHeader | ( | string | $name, |
string | $value | ||
) |
Добавляет заголовок к существующему списку заголовков запроса
string | $name | - название заголовка |
string | $value | - значение заголовка |
clearPreparedHeaders | ( | ) |
Очищает кэш ранее подготовленных заголовков
|
protected |
Возвращает контекст потока для запроса
executeRequest | ( | ) |
Исполняет сформированный запрос
getAuthorization | ( | ) |
Возвращает http-авторизацию
getCacheLifeTime | ( | ) |
Возвращает время кэширования результата в секундах
getContentType | ( | ) |
Возвращает тип содержимого в запросе
getHeaders | ( | ) |
Возвращает заголовки запроса
getIdempotenceKey | ( | ) |
Возвращает ключ идемпотентности
getIgnoreErrors | ( | ) |
Возвращает игнорировать ли не 2xx статус ответов на запросы.
getJsonEncodeFlags | ( | ) |
Возвращает текущие флаги, которые будут использованы при вызове JSON_encode
|
protected |
Возвращает объект логирования
getLogOption | ( | string | $option_name, |
$default = null |
|||
) |
Возвращает значение опции логирования
string | $option_name | - имя опции |
mixed | $default | - значение по умолчанию |
getMethod | ( | ) |
Возвращает метод запроса
getParams | ( | ) |
Возвращает параметры запроса
getPreparedContent | ( | ) |
Возвращает параметры запроса, подготовленные с учётом текущего типа содержимого
getPreparedHeaders | ( | ) |
Возвращает подготовленные заголовки запроса
getRequestHash | ( | ) |
Формирует хэш параметров запроса
|
protected |
Возвращает итоговый адрес запроса
getSourceId | ( | ) |
Возвращает идентификатор инициатора запроса
getTimeout | ( | ) |
Возвращает тайм-аут на чтение в секундах
getUrl | ( | ) |
Возвращает адрес запроса
isEnabledCache | ( | ) |
Возвращает флаг кэширования
|
protected |
Логирует заголовки, только если они не учитываются в ключе хэша
|
protected |
Логирует заголовки и содержимое ответа от внешнего сервера
ExternalResponse | $response | - содержимое ответа |
float | null | $time_to_response | - время получения ответа |
bool | $from_cache | - ответ взят из кэша |
|
protected |
Логирует заголовки и параметры запроса к внешнему серверу
|
protected |
Извлекает статус ответа из заголовков
string[] | $headers - заголовки ответа |
|
protected |
Проверяет корректность заполнения обязательных параметров
ExternalRequestException |
setAuthorization | ( | $authorization | ) |
Устанавливает http-авторизацию
string | callable | $authorization | - http-авторизация |
setBasicAuth | ( | string | $username, |
string | $password | ||
) |
Устанавливает базовую http-авторизацию
string | $username | - имя пользователя |
string | $password | - пароль |
setCacheHashFunction | ( | $callable | ) |
Устанавливает произвольную функцию для расчета уникального идентификатора хэша данного запроса, который будет использоваться при кэшировании
callable | $callable |
setCacheLifeTime | ( | $time_sec | ) |
Устанавливает время кэширования результата в секундах
$time_sec |
setCacheResponseStatus | ( | array | $list | ) |
Устанавливает статусы ответов на запрос, в которых результат будет кэшироваться. Необходимо, чтобы исключать из кэширования ошибочные запросы
array | $list |
setContentType | ( | string | $content_type | ) |
Устанавливает тип содержимого
string | $content_type | - тип содержимого |
setEnableCache | ( | bool | $enable_cache = true | ) |
Устанавливает флаг кэширования
bool | $enable_cache | - значение |
setEnableLog | ( | bool | $enable_log = true | ) |
bool | $enable_log | - значение |
setExcludeCacheHashParams | ( | array | $exclude_hash_params | ) |
Устанавливает, какие параметры нужно исключить из кэша
array | $exclude_hash_params | массив, состоящий из констант self::HASH_PARAM_.... |
setHeaders | ( | array | $headers | ) |
Устанавливает заголовки запроса
string[] | $headers - заголовки запроса |
setIdempotenceKey | ( | string | $idempotence_key | ) |
Устанавливает ключ идемпотентности
string | $idempotence_key | - ключ идемпотентности |
setIgnoreErrors | ( | $bool | ) |
Устанавливает игнорировать ли не 2xx статус ответов на запросы.
$bool |
setJsonEncodeFlags | ( | $flags | ) |
Устанавливает флаги, которые будут использованы при вызове JSON_encode
$flags |
setLog | ( | AbstractLog | $log, |
string | $log_level_request, | ||
string | $log_level_response = null |
||
) |
Устанавливает используемый объект логирования
AbstractLog | $log | - экземпляр класса логирования |
string | $log_level_request | - уровень логирования запросов |
string | $log_level_response | - уровень логирования ответов, если не указан то считается равным $log_level_request |
setLogOption | ( | string | $option_name, |
$value | |||
) |
Устанавливает значение опции логирования
string | $option_name | - имя опции |
mixed | $value | - знацение опции |
setMethod | ( | string | $method | ) |
Устанавливает метод запроса
string | $method | - метод запроса |
setParam | ( | $key, | |
$value | |||
) |
Устанавливает один параметр запроса
string | $key | ключ параметра |
mixed | $value | значение параметра |
setParams | ( | $params | ) |
Устанавливает параметры запроса
mixed | $params |
setSourceId | ( | string | $source_id | ) |
Устанавливает идентификатор инициатора запроса
string | $source_id | - идентификатор инициатора запроса |
setTimeout | ( | float | $timeout | ) |
Устанавливает тайм-аут на чтение в секундах
float | $timeout | - тайм-аут |
setUrl | ( | string | $url | ) |
Устанавливает адрес запроса
string | $url | - адрес запроса |
const CONTENT_TYPE_FORM_DATA = 'application/x-www-form-urlencoded; charset=utf-8' |
const CONTENT_TYPE_JSON = 'application/json; charset=utf-8' |
const CONTENT_TYPE_JSON_WITHOUT_CHARSET = 'application/json' |
const CONTENT_TYPE_XML = 'application/xml; charset=utf-8' |
const HASH_PARAM_DATA = 'data' |
const HASH_PARAM_HEADERS = 'headers' |
const HASH_PARAM_METHOD = 'method' |
const LOG_OPTION_DONT_WRITE_RESPONSE_BODY = 'dont_write_response_body' |
const METHOD_DELETE = 'DELETE' |
const METHOD_GET = 'GET' |
const METHOD_PATCH = 'PATCH' |
const METHOD_POST = 'POST' |
const METHOD_PUT = 'PUT' |