Guzzles cURL-optionsnøgler er PHP-konstanter
Ret advarslen fra curl_setopt_array om optionsnøgler ved at bruge heltalskonstanterne CURLOPT i Guzzles curl-optionarray på lavt niveau.
I en Guzzle 7-anmodning, der bruger cURL-handleren, bruger curl-optionarrayet på lavt niveau PHPs heltalskonstanter CURLOPT som nøgler:
$options = [
'curl' => [
CURLOPT_PROXY => 'proxy.example',
CURLOPT_PROXYPORT => 8080,
],
];
Behold den ydre Guzzle-nøgle 'curl' i anførselstegn. Sæt ikke CURLOPT_PROXY eller CURLOPT_PROXYPORT i anførselstegn. Hvis du skriver 'CURLOPT_PROXY', oprettes en almindelig streng med det navn; PHP omdanner den ikke til konstantens numeriske værdi.
Denne forskel forklarer advarslen fra curl_setopt_array om, at nøgler skal være CURLOPT-konstanter eller tilsvarende heltal. Kontrollér arrayets form, før du ændrer proxyadressen eller kontoen: advarslen handler om konfiguration af handleren, ikke om bevis for, at den eksterne proxy afviste en forbindelse.
Når der ikke er brug for cURL-adfærd på lavt niveau, er Guzzles normale anmodningsoption enklere:
$options = [
'proxy' => 'http://proxy.example:8080',
];
Vælg den tilsigtede grænseflade, og hold dens nøgletyper konsistente. Når formen er gyldig, kan en HTTP-post fra HTTP-proxylisten levere endpointet til en tilladt anmodning til en offentlig URL uden en proxykonto. Curl-arrayet på lavt niveau kræver cURL-handleren; en anden handler bliver ikke cURL, blot fordi arrayet findes.