$proxy = 'http://'
    . rawurlencode($proxyUser) . ':'
    . rawurlencode($proxyPassword)
    . '@proxy.example:8080';

$client = new \Symfony\Component\HttpClient\CurlHttpClient([
    'proxy' => $proxy,
    'no_proxy' => 'localhost,internal.example',
]);
$response = $client->request('GET', 'https://api.example/items');
$status = $response->getStatusCode();

rawurlencode ব্যবহারকারীর নাম ও পাসওয়ার্ড আলাদাভাবে-এর জন্য প্রযোজ্য। সম্পূর্ণ URL এনকোড করলে লিসেনার খুঁজে পেতে প্রয়োজনীয় স্কিম ও অথরিটি বিভাজকগুলোও এনকোড হয়ে যাবে।

HTTP প্রক্সি CONNECT-এর মাধ্যমে HTTPS API সংযোগ বহন করে। প্রক্সি অ্যাকাউন্ট API প্রমাণীকরণের বিকল্প নয়, এবং প্রক্সি লগইনের জন্য http_version-কে 2.0-এ বাধ্য করা প্রয়োজন নেই।

কমা-বিভক্ত no_proxy তালিকা কাঙ্ক্ষিত সরাসরি হোস্ট নির্বাচন করে। স্পষ্ট অপশন না থাকলে কম্পোনেন্টটি এর বদলে তার সমর্থিত পরিবেশ সেটিংস ব্যবহার করতে পারে।

এটি সরাসরি CurlHttpClient তৈরি করে, যার জন্য PHP-এর cURL ট্রান্সপোর্ট প্রয়োজন। Symfony-এর সাধারণ ফ্যাক্টরি অন্য ব্যাকএন্ড বেছে নিতে পারে। অবশিষ্ট প্রত্যাখ্যানের জন্য সেই নির্বাচিত ট্রান্সপোর্টটি চিহ্নিত করুন এবং অ্যাকাউন্টটি গন্তব্য Authorization হেডারে সরানোর বদলে প্রক্সি-পর্যায়ের ত্রুটিটি ধরে রাখুন।

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