Konfigurácia proxy v CurlTransport v Yii2
Pred odovzdaním CURLOPT_PROXY a možností overovania proxy požiadavke HTTP klienta Yii2 vyberte CurlTransport.
Pred odovzdaním číselných možností CURLOPT vyberte CurlTransport. HTTP klient Yii2 predvolene používa StreamTransport a nestane sa cURL len preto, že sú tieto konštanty prítomné:
$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žite prostredie PHP s rozšírením cURL. Tento príklad očakáva HTTP proxy prijímajúce Basic; zlaďte proxy s metódou, ktorú transport podporuje.
CURLOPT_PROXYAUTH volí overovanie sprostredkovateľa. CURLOPT_HTTPAUTH a autorizácia API namiesto toho obsluhujú cieľ.
Zdieľané možnosti požiadaviek Yii2 vrátane proxy citlivého na veľkosť písmen a časových limitov sú iné rozhranie. Nerobia z ľubovoľných konštánt cURL prenosné hodnoty medzi backendmi.
Ak Client.requestConfig poskytuje predvolené hodnoty, ktoré musia zostať, použite addOptions na doplnenia pri jednotlivých požiadavkách. Zobrazený setOptions nahrádza túto kolekciu a môže odstrániť zdedené voľby.