Konfigurer en proxy i Yii2s CurlTransport
Vælg CurlTransport, før du sender CURLOPT_PROXY og proxygodkendelsesindstillinger til en HTTP-klientanmodning i Yii2.
Vælg CurlTransport, før du sender numeriske CURLOPT-indstillinger. Yii2s HTTP-klient bruger som standard StreamTransport og bliver ikke cURL, blot fordi disse konstanter findes:
$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();Brug en PHP-runtime med cURL-udvidelsen. Dette eksempel forventer en HTTP-proxy, der accepterer Basic; afstem proxien med den metode, transporten understøtter.
CURLOPT_PROXYAUTH vælger godkendelse hos mellemleddet. CURLOPT_HTTPAUTH og API-godkendelse betjener i stedet destinationen.
Yii2s delte anmodningsindstillinger, herunder proxy med forskel på store og små bogstaver samt timeouts, er en anden grænseflade. De gør ikke vilkårlige cURL-konstanter portable mellem backends.
Hvis Client.requestConfig leverer standardværdier, der skal bevares, så brug addOptions til tilføjelser pr. anmodning. Den viste setOptions erstatter den samling og kan fjerne nedarvede valg.