Az Apache HttpClient 5 Fluent API-jában a Request proxyt választhat, míg az Executor biztosítja a fiókját. Hajtsa végre a kérést azon a hitelesítő adatokkal rendelkező objektumon keresztül:

HttpHost proxy = new HttpHost("http", "proxy.example", 8080);
Executor executor = Executor.newInstance()
    .auth(proxy, proxyUser, proxyPassword.toCharArray());

String body = executor.execute(
        Request.get("https://www.example.com/").viaProxy(proxy))
    .returnContent()
    .asString();

Az Executor és a Request a org.apache.hc.client5.http.fluent csomagból származik; a HttpHost a org.apache.hc.core5.http csomagból. A fiókváltozók az alkalmazás konfigurációjából származnak.

A proxy két használata szándékosan ugyanazt a gazdagépet és portot írja le. A viaProxy választja az útvonalat, míg az auth regisztrálja a köztes fél hitelesítő adatait az Executornál. Ha a végeredmény továbbra is 407, hasonlítsa össze a választott útvonalat a hitelesítő adatok hatókörével.

Egy külön Request kényelmes execute metódusának hívása más végrehajtási utat használna. Tartsa a hitelesítő adatokkal rendelkező Executort a művelethez kapcsolva, ahogy a példában, hogy a kihívást fogadó kliens a beállított fiókkal rendelkezzen.

A példa az 5.x char-array jelszófelületét használja. A régebbi HttpClient 4 Fluent kódrészletek más csomagokat és metódusaláírásokat használnak. A kérés befejezésekor a returnContent elfogyasztja a választestet, és felszabadítja a kapcsolatot az újrafelhasználáshoz.

Kapcsolódó cikkek