$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 प्रॉक्सी HTTPS API कनेक्शन CONNECT द्वारे वाहून नेते. प्रॉक्सी खाते API प्रमाणीकरणाची जागा घेत नाही, आणि प्रॉक्सी लॉगिनसाठी http_version ला 2.0 वर जबरदस्ती करणे आवश्यक नाही.

स्वल्पविरामाने वेगळी केलेली no_proxy यादी इच्छित थेट होस्ट निवडते. स्पष्ट पर्याय नसल्यास घटक त्याऐवजी त्याची समर्थित पर्यावरण सेटिंग्ज वापरू शकतो.

हे CurlHttpClient थेट तयार करते, ज्यासाठी PHP च्या cURL वाहतुकीची आवश्यकता असते. Symfony ची सामान्य फॅक्टरी दुसरे बॅकएंड निवडू शकते. उर्वरित नकार असल्यास, ती निवडलेली वाहतूक ओळखा आणि खाते गंतव्याच्या Authorization हेडरमध्ये हलवण्याऐवजी प्रॉक्सी-टप्प्यातील त्रुटी ठेवा.

संबंधित लेख