Symfony CurlHttpClient యొక్క ప్రామాణీకరించిన ప్రాక్సీ URL ను సెట్ చేయండి
ప్రాక్సీ ఖాతా భాగాలను ఎన్కోడ్ చేయండి మరియు API గమ్యాన్ని, no_proxy మినహాయింపులను మరియు రవాణా ఎంపికను స్పష్టంగా ఉంచండి.
$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 హెడర్కు తరలించడానికి బదులుగా ప్రాక్సీ-దశ లోపాన్ని ఉంచండి.