Наладка проксі з CURLRequest у CodeIgniter 4.4+
Перадайце URL проксі ў параметрах CURLRequest у CodeIgniter 4.4 або навейшай версіі і ўлічыце паводзіны CONNECT.
У CodeIgniter 4.4.0 у CURLRequest з'явіўся параметр проксі. Перадайце URL проксі ў масіве параметраў запыту:
$client = service('curlrequest');
$response = $client->request('GET', 'https://api.example/', [
'proxy' => 'http://proxy.example:8080',
'connect_timeout' => 5,
'timeout' => 30,
]);
Параметр proxy прымае адзін радок URL. Адлюстраванне http/https у стылі Requests — гэта іншы фармат. Калі гэты параметр недаступны, праверце ўсталяваную версію CodeIgniter.
CURLRequest усталёўвае CURLOPT_PROXY і ўключае CURLOPT_HTTPPROXYTUNNEL для гэтага параметра. Таму пасрэднік HTTP павінен дазваляць CONNECT да патрэбнай мэты.
Выкарыстоўвайце фактычную схему слухача ў URL проксі і пакідайце канчатковую кропку API ў URL запыту. Для дазволеных запытаў да публічных API спіс HTTP-проксі прапануе кандыдатаў для URL HTTP-проксі; праверце, ці дазваляе вузел CONNECT да сапраўднай мэты. Апрацоўвайце атрыманы адказ і памылкі праз існуючы шлях выкліку ў праграме.