$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 taikomas vartotojo vardą ir slaptažodį atskirai. Užkodavus visą URL, būtų užkoduoti ir schemos bei valdžios skirtukai, reikalingi klausytojui rasti.

HTTP proxy perduoda HTTPS API ryšį per CONNECT. Proxy paskyra nepakeičia API autentifikavimo, o proxy prisijungimui nereikia priverstinai nustatyti http_version į 2.0.

Kableliais atskirtas no_proxy sąrašas parenka numatytus tiesioginius hostus. Be aiškių parinkčių komponentas gali naudoti palaikomus aplinkos nustatymus.

Tai tiesiogiai sukuria CurlHttpClient, tam reikia PHP cURL transporto. Bendroji Symfony gamykla gali pasirinkti kitą backend. Jei atmetimas išlieka, nustatykite tą pasirinktą transportą ir išsaugokite proxy etapo klaidą, o ne perkelkite paskyrą į paskirties Authorization antraštę.

Susiję straipsniai