Konfigurer en proxy i CurlTransport for Yii2
Velg CurlTransport før du sender CURLOPT_PROXY og valg for proxyautentisering til en HTTP-klientforespørsel i Yii2.
Velg CurlTransport før du sender numeriske CURLOPT-valg. HTTP-klienten i Yii2 bruker StreamTransport som standard og blir ikke cURL bare fordi disse konstantene er til stede:
$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 en PHP-kjøretid med cURL-utvidelsen. Eksempelet forutsetter en HTTP-proxy som godtar Basic; tilpass proxyen til metoden som transporten støtter.
CURLOPT_PROXYAUTH velger autentisering mot mellomleddet. CURLOPT_HTTPAUTH og API-autorisasjon tjener derimot målet.
Yii2s delte forespørselsvalg, blant annet proxy med skille mellom store og små bokstaver og tidsavbrudd, er et annet grensesnitt. De gjør ikke vilkårlige cURL-konstanter flyttbare mellom ulike backends.
Dersom Client.requestConfig gir standardverdier som må bestå, bruk addOptions for tillegg per forespørsel. Den viste setOptions erstatter denne samlingen og kan fjerne arvede valg.