W klasycznym interfejsie API Apache HttpClient 5 włącz właściwości systemowe podczas tworzenia klienta:

import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;
import org.apache.hc.client5.http.impl.classic.HttpClients;

try (CloseableHttpClient client = HttpClients.custom()
        .useSystemProperties()
        .build()) {
    // Execute the application's HTTP work with this client.
}

Podaj zamierzone argumenty startowe, na przykład -Dhttp.proxyHost=203.0.113.10 -Dhttp.proxyPort=8080, używając rzeczywistego punktu końcowego. Lista proxy HTTP oferuje publicznych kandydatów, gdy ta trasa jest dozwolona. Uwzględnij właściwości HTTPS i obejścia dla odpowiednich celów. Samo ustawienie właściwości JVM nie dowodzi, że ten klient jej używa.

Dokumentacja konstruktora wskazuje właściwości uwzględniane przez jego domyślne komponenty. Jawne planisty tras lub inne dostarczone komponenty mogą zmienić to zachowanie.

Wykonuj żądania przez tę skonfigurowaną instancję. Zależność, która tworzy innego klienta, potrzebuje własnej obsługiwanej fabryki lub wejścia proxy; nieużywany klient obok niczego nie zmienia.

Zidentyfikuj bibliotekę i importy w nieudanej operacji. Commons HttpClient 3, Apache HttpClient 4, HttpClient 5 i java.net.http.HttpClient Javy mają różne interfejsy konfiguracji. Stary przepis klasowy nie może wyjaśnić klienta, który nigdy nie używa tej generacji.

Powiązane artykuły