Kies CurlTransport foardat jo numerike CURLOPT-opsjes trochjouwe. De HTTP-klant fan Yii2 brûkt standert StreamTransport en wurdt net cURL allinne om't dy konstanten oanwêzich binne:

$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();

Brûk in PHP-runtime mei de cURL-útwreiding. Dit foarbyld ferwachtet in HTTP-proxy dy't Basic akseptearret; stem de proxy ôf op de metoade dy't it transport stipet.

CURLOPT_PROXYAUTH kiest autentikaasje by de tuskenpersoan. CURLOPT_HTTPAUTH en API-autorisaasje tsjinje ynstee it doelwyt.

De dielde fersykopsjes fan Yii2, wêrûnder haadlettergefoelige proxy en tiidlimititen, binne in oare ynterface. Se meitsje willekeurige cURL-konstanten net oerdraachber tusken backends.

As Client.requestConfig standertwearden leveret dy't bliuwe moatte, brûk dan addOptions foar tafoegings per fersyk. De toande setOptions ferfangt dy samling en kin erfd keuzes fuortsmite.

Relatearre artikelen