Tuning
in package
Тонкая настройка транспорта.
Параметры, которые нужны реже основных: привязка к сетевому интерфейсу,
таймаут простоя (обрыв «зависшей» передачи), управление Expect: 100-continue,
ограничение скорости приёма/передачи, отладочный журнал cURL (сырой поток или
VerboseLog с маскированием секретов), сбор цепочки
сертификатов сервера, задержка перед отправкой и произвольные опции cURL.
Произвольные опции не могут переопределить критичные для безопасности
настройки (проверку TLS, перенаправления, адрес, фиксацию DNS и колбэки
приёма данных) — такая попытка отклоняется исключением.
Table of Contents
Methods
- __construct() : mixed
- capturesCertificates() : bool
- Собирать ли цепочку сертификатов сервера.
- curlOptions() : array<int, mixed>
- Произвольные опции cURL.
- debug() : resource|null
- Поток отладочного журнала cURL.
- delay() : float
- Задержка перед отправкой.
- expectsContinue() : bool
- Разрешён ли `Expect: 100-continue`.
- idleTimeout() : int
- Таймаут простоя в секундах.
- interface() : string|null
- Сетевой интерфейс исходящих соединений.
- maxDownloadSpeed() : int
- Предел скорости приёма.
- maxUploadSpeed() : int
- Предел скорости передачи.
- toCurlOptions() : array<int, mixed>
- Опции cURL, соответствующие настройке.
- verbose() : VerboseLog|null
- Отладочный журнал cURL с маскированием секретов.
Methods
__construct()
public
__construct([string|null $interface = null ][, int $idleTimeout = 0 ][, bool $expectContinue = true ][, int $maxDownloadSpeed = 0 ][, int $maxUploadSpeed = 0 ][, resource|null $debug = null ][, bool $certificateInfo = false ][, float $delay = 0.0 ][, array<int, mixed> $curlOptions = [] ][, VerboseLog|null $verbose = null ]) : mixed
Parameters
- $interface : string|null = null
-
сетевой интерфейс или локальный адрес исходящих соединений
- $idleTimeout : int = 0
-
таймаут простоя в секундах: обрыв, если данные не идут (0 — выкл.)
- $expectContinue : bool = true
-
разрешать ли
Expect: 100-continueдля больших тел - $maxDownloadSpeed : int = 0
-
предел скорости приёма в байтах/с (0 — без предела)
- $maxUploadSpeed : int = 0
-
предел скорости передачи в байтах/с (0 — без предела)
- $debug : resource|null = null
-
поток для отладочного журнала cURL (
CURLOPT_VERBOSE) илиnull - $certificateInfo : bool = false
-
собирать ли цепочку сертификатов сервера
- $delay : float = 0.0
-
задержка перед отправкой в секундах
- $curlOptions : array<int, mixed> = []
-
произвольные опции cURL (
CURLOPT_*) - $verbose : VerboseLog|null = null
-
отладочный журнал cURL с маскированием секретов или
null(если задан, заменяет поток$debug)
Tags
capturesCertificates()
Собирать ли цепочку сертификатов сервера.
public
capturesCertificates() : bool
Return values
bool —true, если сбор включён
curlOptions()
Произвольные опции cURL.
public
curlOptions() : array<int, mixed>
Return values
array<int, mixed> —опции
debug()
Поток отладочного журнала cURL.
public
debug() : resource|null
Return values
resource|null —поток или null
delay()
Задержка перед отправкой.
public
delay() : float
Return values
float —секунды
expectsContinue()
Разрешён ли `Expect: 100-continue`.
public
expectsContinue() : bool
Return values
bool —true, если поведение cURL по умолчанию сохранено
idleTimeout()
Таймаут простоя в секундах.
public
idleTimeout() : int
Return values
int —секунды (0 — выключен)
interface()
Сетевой интерфейс исходящих соединений.
public
interface() : string|null
Return values
string|null —интерфейс или null
maxDownloadSpeed()
Предел скорости приёма.
public
maxDownloadSpeed() : int
Return values
int —байт в секунду (0 — без предела)
maxUploadSpeed()
Предел скорости передачи.
public
maxUploadSpeed() : int
Return values
int —байт в секунду (0 — без предела)
toCurlOptions()
Опции cURL, соответствующие настройке.
public
toCurlOptions() : array<int, mixed>
Return values
array<int, mixed> —опции CURLOPT_*
verbose()
Отладочный журнал cURL с маскированием секретов.
public
verbose() : VerboseLog|null
Return values
VerboseLog|null —журнал или null