Konfigurace proxy v CurlTransport v Yii2
Před předáním CURLOPT_PROXY a voleb ověřování proxy požadavku HTTP klienta Yii2 vyberte CurlTransport.
Před předáním číselných voleb CURLOPT vyberte CurlTransport. HTTP klient Yii2 ve výchozím nastavení používá StreamTransport a nestane se cURL jen proto, že jsou tyto konstanty přítomny:
$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();Použijte runtime PHP s rozšířením cURL. Tento příklad očekává HTTP proxy přijímající Basic; slaďte proxy s metodou, kterou transport podporuje.
CURLOPT_PROXYAUTH volí ověřování zprostředkovatele. CURLOPT_HTTPAUTH a autorizace API naopak obsluhují cílový server.
Sdílené volby požadavků Yii2, včetně proxy citlivého na velikost písmen a časových limitů, jsou jiné rozhraní. Nedělají z libovolných konstant cURL přenositelné hodnoty mezi backendy.
Pokud Client.requestConfig poskytuje výchozí hodnoty, které musí zůstat, použijte addOptions pro doplňky u jednotlivých požadavků. Zobrazený setOptions tuto kolekci nahrazuje a může odstranit zděděné volby.