ସଂଖ୍ୟାତ୍ମକ 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 ସେହି ସଂଗ୍ରହକୁ ବଦଳାଏ ଏବଂ ଉତ୍ତରାଧିକାରୀ ଚୟନ ହଟାଇପାରେ।

ସମ୍ପର୍କିତ ପ୍ରବନ୍ଧ