У запыце Guzzle 7, які выкарыстоўвае апрацоўшчык cURL, нізкаўзроўневы масіў опцый curl выкарыстоўвае ў якасці ключоў цэлалікавыя канстанты CURLOPT з PHP:

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

Знешні ключ Guzzle 'curl' пакіньце ў двукоссі. Не бярыце ў двукоссе CURLOPT_PROXY і CURLOPT_PROXYPORT. Запіс 'CURLOPT_PROXY' стварае звычайны радок з гэтым імем; PHP не пераўтварае яго ў лікавае значэнне канстанты.

Гэтая розніца тлумачыць папярэджанне curl_setopt_array пра тое, што ключы павінны быць канстантамі CURLOPT або эквівалентнымі цэлымі лікамі. Праверце форму масіва, перш чым змяняць адрас проксі або ўліковы запіс: гэтае папярэджанне датычыцца наладкі дэскрыптара, а не сведчанне таго, што аддалены проксі адмовіў у злучэнні.

Калі нізкаўзроўневыя паводзіны cURL не патрэбныя, звычайная опцыя запыту Guzzle прасцей:

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

Выберыце патрэбны інтэрфейс і трымайце тыпы яго ключоў узгодненымі. Калі форма слушная, HTTP-запіс з спіс HTTP-проксі можа даць канчатковы пункт для дазволенага запыту да публічнага URL без уліковага запісу проксі. Нізкаўзроўневы масіў curl патрабуе апрацоўшчыка cURL; іншы апрацоўшчык не становіцца cURL толькі таму, што гэты масіў прысутны.

Падобныя артыкулы