Kusanidi proksi katika CurlTransport ya Yii2
Chagua CurlTransport kabla ya kupitisha CURLOPT_PROXY na chaguo za uthibitishaji wa proksi kwa ombi la mteja wa HTTP wa Yii2.
Chagua CurlTransport kabla ya kupitisha chaguo za nambari za CURLOPT. Mteja wa HTTP wa Yii2 hutumia StreamTransport kwa chaguo-msingi na hawi cURL kwa sababu tu viambishi hivyo vipo:
$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();Tumia mazingira ya PHP yenye kiendelezi cha cURL. Mfano huu unatarajia proksi ya HTTP inayokubali Basic; oanisha proksi na mbinu inayoungwa mkono na usafirishaji.
CURLOPT_PROXYAUTH huchagua uthibitishaji kwa mpatanishi. CURLOPT_HTTPAUTH na idhini ya API huhudumia lengwa badala yake.
Chaguo za ombi zinazoshirikiwa za Yii2, ikiwa ni pamoja na proksi inayojali herufi kubwa na ndogo na muda wa kusubiri, ni kiolesura kingine. Hazifanyi viambishi holela vya cURL kuhamishika kati ya backend.
Iwapo Client.requestConfig hutoa thamani chaguo-msingi ambazo lazima zibaki, tumia addOptions kwa nyongeza kwa kila ombi. setOptions iliyoonyeshwa hubadilisha mkusanyiko huo na inaweza kuondoa chaguo zilizorithiwa.