Cấu hình proxy với CURLRequest của CodeIgniter 4.4+
Truyền URL proxy trong các tùy chọn CURLRequest trên CodeIgniter 4.4 trở lên và lưu ý hành vi CONNECT của nó.
CodeIgniter 4.4.0 đã thêm tùy chọn proxy vào CURLRequest. Cung cấp URL proxy trong mảng tùy chọn của yêu cầu:
$client = service('curlrequest');
$response = $client->request('GET', 'https://api.example/', [
'proxy' => 'http://proxy.example:8080',
'connect_timeout' => 5,
'timeout' => 30,
]);
Tùy chọn proxy chỉ nhận một chuỗi URL. Ánh xạ http/https theo kiểu Requests là định dạng khác. Hãy kiểm tra phiên bản CodeIgniter đã cài nếu tùy chọn này không có.
CURLRequest đặt CURLOPT_PROXY và bật CURLOPT_HTTPPROXYTUNNEL cho tùy chọn này. Vì vậy trung gian HTTP phải cho phép CONNECT đến đích dự định.
Dùng scheme thực tế của listener trong URL proxy và giữ điểm cuối API trong URL yêu cầu. Với các yêu cầu API công khai được phép, danh sách proxy HTTP cung cấp ứng viên cho URL proxy HTTP; kiểm tra rằng nút cho phép CONNECT đến đích thực tế. Xử lý phản hồi trả về và lỗi qua đường gọi hiện có của ứng dụng.