Yii2'nin CurlTransport'unda Proxy Yapılandırma
CURLOPT_PROXY ve proxy kimlik doğrulama seçeneklerini Yii2 HTTP istemci isteğine aktarmadan önce CurlTransport'u seçin.
Sayısal CURLOPT seçeneklerini aktarmadan önce CurlTransport'u seçin. Yii2 HTTP istemcisi varsayılan olarak StreamTransport kullanır ve yalnızca bu sabitler bulunduğu için cURL'ye dönüşmez:
$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();cURL uzantısına sahip bir PHP çalışma ortamı kullanın. Bu örnek Basic kabul eden bir HTTP proxy varsayar; proxy'yi transportun desteklediği yöntemle eşleştirin.
CURLOPT_PROXYAUTH aracıya yönelik kimlik doğrulamayı seçer. CURLOPT_HTTPAUTH ve API yetkilendirmesi ise bunun yerine hedefe hizmet eder.
Yii2'nin paylaşılan istek seçenekleri, büyük-küçük harfe duyarlı proxy ve zaman aşımları dahil, başka bir arayüzdür. Bunlar rastgele cURL sabitlerini arka uçlar arasında taşınabilir kılmaz.
Kalması gereken varsayılanları Client.requestConfig sağlıyorsa, istek başına eklemeler için addOptions kullanın. Gösterilen setOptions bu koleksiyonun yerini alır ve devralınan seçimleri kaldırabilir.