Yii2 CurlTransport da proksini sozlash
CURLOPT_PROXY va proksi autentifikatsiya parametrlarini Yii2 HTTP mijozi so'roviga uzatishdan oldin CurlTransport ni tanlang.
Raqamli CURLOPT parametrlarini uzatishdan oldin CurlTransport ni tanlang. Yii2 HTTP mijozi sukut bo'yicha StreamTransport dan foydalanadi va faqat shu konstantalar mavjudligi sababli cURL ga aylanmaydi:
$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 kengaytmasi bo'lgan PHP muhitidan foydalaning. Bu misol Basic ni qabul qiluvchi HTTP proksini nazarda tutadi; proksini transport qo'llab-quvvatlaydigan usulga moslang.
CURLOPT_PROXYAUTH vositachi autentifikatsiyasini tanlaydi. CURLOPT_HTTPAUTH va API avtorizatsiyasi esa manzilga xizmat qiladi.
Yii2 ning umumiy so'rov parametrlari, jumladan registrga sezgir proksi va vaqt cheklovlari, boshqa interfeysdir. Ular ixtiyoriy cURL konstantalarini backend lar orasida ko'chiriladigan qilmaydi.
Agar Client.requestConfig saqlanib qolishi kerak bo'lgan sukut qiymatlarini bersa, har bir so'rov uchun qo'shimchalarga addOptions dan foydalaning. Ko'rsatilgan setOptions o'sha to'plamni almashtiradi va meros qolgan tanlovlarni olib tashlashi mumkin.