Konfigurisanje proxyja u CurlTransportu Yii2
Odaberite CurlTransport prije prosljeđivanja CURLOPT_PROXY i opcija autentifikacije proxyja zahtjevu HTTP klijenta Yii2.
Odaberite CurlTransport prije prosljeđivanja numeričkih opcija CURLOPT. HTTP klijent Yii2 prema zadanim postavkama koristi StreamTransport i ne postaje cURL samo zato što su te konstante prisutne:
$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();Koristite PHP okruženje s cURL ekstenzijom. Ovaj primjer očekuje HTTP proxy koji prihvata Basic; uskladite proxy s metodom koju transport podržava.
CURLOPT_PROXYAUTH odabire autentifikaciju posrednika. CURLOPT_HTTPAUTH i API autorizacija služe odredištu.
Zajedničke opcije zahtjeva u Yii2, uključujući proxy osjetljiv na velika i mala slova i vremenska ograničenja, drugi su interfejs. One ne čine proizvoljne cURL konstante prenosivim između backendova.
Ako Client.requestConfig daje zadane vrijednosti koje moraju opstati, koristite addOptions za dodavanja po zahtjevu. Prikazani setOptions zamjenjuje tu kolekciju i može ukloniti naslijeđene izbore.