Изберете 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 константи преносливи меѓу backend-и.

Ако Client.requestConfig дава стандардни вредности што мора да останат, користете addOptions за додавања по барање. Прикажаното setOptions ја заменува таа колекција и може да ги отстрани наследените избори.

Поврзани статии