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-дің жалпы фабрикасы басқа backend таңдай алады. Қалған бас тарту болса, сол таңдалған тасымалдауды анықтап, тіркелгіні мақсаттың Authorization тақырыбына көшірудің орнына прокси кезеңінің қатесін сақтаңыз.