I en Guzzle 7-forespørsel som bruker cURL-handleren, bruker curl-opsjonsarrayet på lavt nivå PHPs heltallskonstanter CURLOPT som nøkler:

$options = [
    'curl' => [
        CURLOPT_PROXY => 'proxy.example',
        CURLOPT_PROXYPORT => 8080,
    ],
];

Behold den ytre Guzzle-nøkkelen 'curl' i anførselstegn. Ikke sett CURLOPT_PROXY eller CURLOPT_PROXYPORT i anførselstegn. Skriver du 'CURLOPT_PROXY', opprettes en vanlig streng med det navnet; PHP gjør den ikke om til konstantens numeriske verdi.

Denne forskjellen forklarer advarselen fra curl_setopt_array om at nøkler må være CURLOPT-konstanter eller tilsvarende heltall. Kontroller formen på arrayet før du endrer proxyadressen eller kontoen: advarselen handler om konfigurering av handleren, og er ikke bevis for at den eksterne proxyen avviste en tilkobling.

Når det ikke trengs cURL-atferd på lavt nivå, er Guzzles vanlige forespørselsalternativ enklere:

$options = [
    'proxy' => 'http://proxy.example:8080',
];

Velg grensesnittet du har tenkt, og hold nøkkeltypene konsistente. Når formen er gyldig, kan en HTTP-oppføring fra HTTP-proxylisten gi endepunktet for en tillatt forespørsel til en offentlig URL uten proxykonto. Curl-arrayet på lavt nivå krever cURL-handleren; en annen handler blir ikke cURL bare fordi arrayet finnes.

Relaterte artikler