Set opp ein proxy i CurlTransport hjå Yii2
Vel CurlTransport før du sender CURLOPT_PROXY og proxyautentiseringsval til ein HTTP-klientførespurnad i Yii2.
Vel CurlTransport før du sender numeriske CURLOPT-val. HTTP-klienten i Yii2 brukar StreamTransport som standard og blir ikkje cURL berre fordi desse konstantane finst:
$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();Bruk ein PHP-køyretid med cURL-utvidinga. Dette dømet føreset ein HTTP-proxy som godtek Basic; tilpass proxyen til metoden transporten støttar.
CURLOPT_PROXYAUTH vel autentisering mot mellomleddet. CURLOPT_HTTPAUTH og API-autorisasjon tener i staden målet.
Dei delte førespurnadsvala i Yii2, medrekna proxy som skil mellom store og små bokstavar og tidsavbrot, er eit anna grensesnitt. Dei gjer ikkje vilkårlege cURL-konstantar flyttbare mellom backendar.
Viss Client.requestConfig gjev standardverdiar som må bestå, bruk addOptions for tillegg per førespurnad. Den viste setOptions erstattar den samlinga og kan fjerna arva val.