Налаштування проксі в CurlTransport Yii2
Виберіть CurlTransport, перш ніж передавати CURLOPT_PROXY і параметри автентифікації проксі в запит HTTP-клієнта Yii2.
Виберіть CurlTransport, перш ніж передавати числові параметри CURLOPT. HTTP-клієнт Yii2 типово використовує StreamTransport і не стає cURL лише через наявність цих констант:
$client = new \yii\httpclient\Client([
'transport' => \yii\httpclient\CurlTransport::class,
]);
$response = $client->createRequest()
->setMethod('GET')
->setUrl('https://api.example/items')
->setOptions([
CURLOPT_PROXY => 'http://proxy.example:8080',
CURLOPT_PROXYAUTH => CURLAUTH_BASIC,
CURLOPT_PROXYUSERNAME => $proxyUser,
CURLOPT_PROXYPASSWORD => $proxyPassword,
CURLOPT_CONNECTTIMEOUT => 5,
CURLOPT_TIMEOUT => 15,
])
->send();Використовуйте середовище PHP з розширенням cURL. Цей приклад розраховує на HTTP-проксі, що приймає Basic; узгодьте проксі з методом, який підтримує транспорт.
CURLOPT_PROXYAUTH вибирає автентифікацію в посередника. CURLOPT_HTTPAUTH і авторизація API натомість обслуговують призначення.
Спільні параметри запитів Yii2, зокрема проксі з урахуванням регістру та тайм-аути, — це інший інтерфейс. Вони не роблять довільні константи cURL переносними між бекендами.
Якщо Client.requestConfig задає типові значення, які мають зберегтися, використовуйте addOptions для доповнень в окремому запиті. Показаний setOptions замінює цю колекцію і може прибрати успадковані налаштування.