$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();

Mae rawurlencode yn berthnasol i yr enw defnyddiwr a'r cyfrinair ar wahân. Byddai amgodio'r URL cyfan hefyd yn amgodio'r gwahanwyr cynllun ac awdurdod sydd eu hangen i ddod o hyd i'r gwrandawr.

Mae'r procsi HTTP yn cludo'r cysylltiad API HTTPS drwy CONNECT. Nid yw'r cyfrif procsi yn disodli dilysu API, ac nid oes angen gorfodi http_version i 2.0 ar gyfer mewngofnodi procsi.

Mae'r rhestr no_proxy wedi'i gwahanu gan atalnodau yn dewis y gwesteiwyr uniongyrchol a fwriedir. Heb opsiynau eglur, gall y gydran ddefnyddio ei gosodiadau amgylchedd a gefnogir yn lle hynny.

Mae hyn yn adeiladu CurlHttpClient yn uniongyrchol, sy'n gofyn am drafnidiaeth cURL PHP. Gall ffatri gyffredinol Symfony ddewis backend arall. Ar gyfer gwrthodiad sy'n parhau, nodwch y drafnidiaeth a ddewiswyd a chadw gwall y cam procsi yn lle symud y cyfrif i bennawd Authorization cyrchfan.

Erthyglau cysylltiedig