$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 kusebenza ku-igama lomsebenzisi nephasiwedi ngokwehlukana. Ukufaka ikhodi ku-URL yonke kuzofaka ikhodi nezihlukanisi ze-scheme ne-authority ezidingekayo ukuthola isilaleli.

I-proxy ye-HTTP ihambisa ukuxhumana kwe-HTTPS API nge-CONNECT. I-akhawunti ye-proxy ayithathi indawo yokuqinisekisa i-API, futhi akudingekile ukuphoqelela http_version ukuba kube 2.0 ukuze ungene nge-proxy.

Uhlu lwe-no_proxy oluhlukaniswe ngokhefana lukhetha izingqimba eziqondile ezihlosiwe. Uma zingekho izinketho ezicacile, ingxenye ingasebenzisa izilungiselelo zemvelo ezisekelwayo esikhundleni salokho.

Lokhu kwakha i-CurlHttpClient ngokuqondile, okudinga ukuthutha kwe-cURL ye-PHP. Imboni ejwayelekile ye-Symfony ingakhetha enye i-backend. Uma ukwenqatshwa kusekhona, khomba lokho kuthutha okukhethiwe futhi ugcine iphutha lesigaba se-proxy esikhundleni sokuhambisa i-akhawunti ku-Authorization header yendawo.

Izihloko ezihlobene