Stilla proxy í CurlTransport hjá Yii2
Veldu CurlTransport áður en þú sendir CURLOPT_PROXY og auðkenningarvalkosti proxy til HTTP-biðjendabeiðni í Yii2.
Veldu CurlTransport áður en þú sendir tölulega CURLOPT-valkosti. HTTP-biðjandi Yii2 notar StreamTransport sjálfgefið og verður ekki cURL eingöngu vegna þess að þessar fastar eru til staðar:
$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();Notaðu PHP-umhverfi með cURL-viðbótinni. Þetta dæmi gerir ráð fyrir HTTP-proxy sem tekur við Basic; stilltu proxy í samræmi við þá aðferð sem flutningurinn styður.
CURLOPT_PROXYAUTH velur auðkenningu gagnvart milliliðnum. CURLOPT_HTTPAUTH og API-heimild þjóna hins vegar áfangastaðnum.
Sameiginlegir beiðnivalkostir Yii2, þar á meðal proxy sem greinir há- og lágstafi og tímatakmarkanir, eru annars konar viðmót. Þeir gera handahófskenndar cURL-fastar ekki flytjanlegar milli bakenda.
Ef Client.requestConfig veitir sjálfgefin gildi sem verða að haldast, notaðu addOptions fyrir viðbætur í hverri beiðni. Sýnda setOptions kemur í stað þess safns og getur fjarlægt arfgenga valkosti.