Proxy mit CURLRequest in CodeIgniter 4.4+ konfigurieren
Übergeben Sie die Proxy-URL in den CURLRequest-Optionen ab CodeIgniter 4.4 und berücksichtigen Sie das CONNECT-Verhalten.
CodeIgniter 4.4.0 hat CURLRequest eine Proxy-Option hinzugefügt. Geben Sie eine Proxy-URL im Options-Array der Anfrage an:
$client = service('curlrequest');
$response = $client->request('GET', 'https://api.example/', [
'proxy' => 'http://proxy.example:8080',
'connect_timeout' => 5,
'timeout' => 30,
]);
Die Option proxy akzeptiert eine einzelne URL-Zeichenkette. Eine http/https-Zuordnung im Requests-Stil ist ein anderes Format. Prüfen Sie die installierte CodeIgniter-Version, wenn diese Option fehlt.
CURLRequest setzt CURLOPT_PROXY und aktiviert für die Option CURLOPT_HTTPPROXYTUNNEL. Der HTTP-Vermittler muss daher CONNECT zum vorgesehenen Ziel zulassen.
Verwenden Sie das tatsächliche Schema des Listeners in der Proxy-URL und behalten Sie den API-Endpunkt in der Anfrage-URL. Für zulässige Anfragen an öffentliche APIs liefert die HTTP-Proxy-Liste Kandidaten für die HTTP-Proxy-URL; prüfen Sie, ob der Knoten CONNECT zum tatsächlichen Ziel erlaubt. Behandeln Sie die zurückgegebene Antwort und Fehler über den bestehenden Aufrufpfad der Anwendung.