সংখ্যাসূচক 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 ওই সংগ্রহ প্রতিস্থাপন করে এবং উত্তরাধিকারসূত্রে পাওয়া পছন্দ সরিয়ে দিতে পারে।

সম্পর্কিত নিবন্ধ