I en Guzzle 7-förfrågan som använder cURL-hanteraren använder curl-alternativarrayen på låg nivå PHPs heltalskonstanter CURLOPT som nycklar:

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

Behåll den yttre Guzzle-nyckeln 'curl' inom citattecken. Sätt inte CURLOPT_PROXY eller CURLOPT_PROXYPORT inom citattecken. Att skriva 'CURLOPT_PROXY' skapar en vanlig sträng med det namnet; PHP omvandlar den inte till konstantens numeriska värde.

Den här skillnaden förklarar varningen från curl_setopt_array om att nycklar måste vara CURLOPT-konstanter eller motsvarande heltal. Kontrollera arrayens form innan du ändrar proxyadressen eller kontot: varningen handlar om att konfigurera handtaget och är inte bevis för att den fjärranslutna proxyn nekade en anslutning.

När inget cURL-beteende på låg nivå behövs är Guzzles vanliga förfrågningsalternativ enklare:

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

Välj det avsedda gränssnittet och håll dess nyckeltyper konsekventa. När formen är giltig kan en HTTP-post från HTTP-proxylistan ge slutpunkten för en tillåten förfrågan till en offentlig URL utan proxykonto. Curl-arrayen på låg nivå kräver cURL-hanteraren; en annan hanterare blir inte cURL bara för att arrayen finns.

Relaterade artiklar