$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 kehtib kasutajanime ja parooli eraldi kohta. Kogu URL-i kodeerimine kodeeriks ka skeemi ja autoriteedi eraldajad, mida on vaja kuulaja leidmiseks.

HTTP-puhverserver edastab HTTPS API-ühenduse CONNECTi kaudu. Puhverserveri konto ei asenda API-autentimist ja puhverserveri sisselogimiseks ei ole vaja sundida http_version väärtusele 2.0.

Komadega eraldatud loend no_proxy valib soovitud otsesed hostid. Ilma selgete valikuteta võib komponent selle asemel kasutada oma toetatud keskkonnaseadeid.

See loob CurlHttpClient otse, mis nõuab PHP cURL-transporti. Symfony üldine tehas võib valida teise taustaprogrammi. Kui tagasilükkamine püsib, tuvasta see valitud transport ja säilita puhverserveri etapi viga, selle asemel et viia konto sihtkoha Authorization päisesse.

Seotud artiklid