CodeIgniter 4.4.0 a adăugat o opțiune proxy la CURLRequest. Furnizați un URL de proxy în tabloul de opțiuni al cererii:

$client = service('curlrequest');
$response = $client->request('GET', 'https://api.example/', [
    'proxy' => 'http://proxy.example:8080',
    'connect_timeout' => 5,
    'timeout' => 30,
]);

Opțiunea proxy acceptă un singur șir URL. Maparea http/https în stil Requests este un format diferit. Verificați versiunea CodeIgniter instalată dacă această opțiune nu este disponibilă.

CURLRequest setează CURLOPT_PROXY și activează CURLOPT_HTTPPROXYTUNNEL pentru opțiune. Prin urmare, intermediarul HTTP trebuie să permită CONNECT către ținta dorită.

Folosiți schema reală a listenerului în URL-ul proxy-ului și păstrați endpoint-ul API în URL-ul cererii. Pentru cererile permise către API-uri publice, lista de proxy-uri HTTP oferă candidați pentru URL-ul proxy-ului HTTP; verificați dacă nodul permite CONNECT către ținta reală. Gestionați răspunsul returnat și erorile prin calea de apel existentă a aplicației.

Articole similare