Yii2-ന്റെ CurlTransport-ൽ പ്രോക്സി കോൺഫിഗർ ചെയ്യുക
Yii2 HTTP ക്ലയന്റ് അഭ്യർത്ഥനയിലേക്ക് CURLOPT_PROXY ഉം പ്രോക്സി പ്രാമാണീകരണ ഓപ്ഷനുകളും കൈമാറുന്നതിന് മുമ്പ് CurlTransport തിരഞ്ഞെടുക്കുക.
സംഖ്യാപരമായ CURLOPT ഓപ്ഷനുകൾ കൈമാറുന്നതിന് മുമ്പ് CurlTransport തിരഞ്ഞെടുക്കുക. Yii2-ന്റെ HTTP ക്ലയന്റ് സ്വതവേ StreamTransport ഉപയോഗിക്കുന്നു; ആ സ്ഥിരാങ്കങ്ങൾ ഉള്ളതുകൊണ്ട് മാത്രം അത് cURL ആകുന്നില്ല:
$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 എക്സ്റ്റൻഷനുള്ള PHP റൺടൈം ഉപയോഗിക്കുക. ഈ ഉദാഹരണം Basic സ്വീകരിക്കുന്ന HTTP പ്രോക്സി പ്രതീക്ഷിക്കുന്നു; ട്രാൻസ്പോർട്ട് പിന്തുണയ്ക്കുന്ന രീതിയുമായി പ്രോക്സി ചേർക്കുക.
CURLOPT_PROXYAUTH ഇടനിലക്കാരനോടുള്ള പ്രാമാണീകരണം തിരഞ്ഞെടുക്കുന്നു. CURLOPT_HTTPAUTH ഉം API അനുമതിയും പകരം ലക്ഷ്യസ്ഥാനത്തെ സേവിക്കുന്നു.
Yii2-ന്റെ പങ്കിട്ട അഭ്യർത്ഥന ഓപ്ഷനുകൾ, കേസ്-സെൻസിറ്റീവ് പ്രോക്സിയും സമയപരിധികളും ഉൾപ്പെടെ, മറ്റൊരു ഇന്റർഫേസാണ്. അവ അനിയന്ത്രിതമായ cURL സ്ഥിരാങ്കങ്ങളെ ബാക്കെൻഡുകൾക്കിടയിൽ കൈമാറാവുന്നതാക്കുന്നില്ല.
നിലനിൽക്കേണ്ട സ്വതവേയുള്ള മൂല്യങ്ങൾ Client.requestConfig നൽകുന്നുണ്ടെങ്കിൽ, ഓരോ അഭ്യർത്ഥനയുടെയും കൂട്ടിച്ചേർക്കലുകൾക്ക് addOptions ഉപയോഗിക്കുക. കാണിച്ചിരിക്കുന്ന setOptions ആ ശേഖരം മാറ്റിസ്ഥാപിക്കുകയും പാരമ്പര്യമായി ലഭിച്ച തിരഞ്ഞെടുപ്പുകൾ നീക്കം ചെയ്യുകയും ചെയ്യാം.