Прокси удостоверяване в Apache HttpClient 5 Fluent с Executor
Свържете viaProxy маршрута на Fluent Request с идентификационните данни в Apache HttpClient 5 Executor.
Във Fluent API на Apache HttpClient 5 обектът Request може да избере прокси, докато Executor предоставя неговия акаунт. Изпълнете заявката чрез този обект с идентификационни данни:
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();
Executor и Request идват от org.apache.hc.client5.http.fluent; HttpHost — от org.apache.hc.core5.http. Променливите на акаунта идват от конфигурацията на приложението.
Двете употреби на прокси умишлено описват същия хост и порт. viaProxy избира маршрута, а auth регистрира идентификационни данни за този посредник в Executor. Ако крайният резултат остане 407, сравнете избрания маршрут с обхвата на идентификационните данни.
Извикването на удобния метод execute на отделен Request би използвало друг път на изпълнение. Дръжте Executor с идентификационни данни свързан с операцията, както в примера, така че клиентът, който получава предизвикателството, да има конфигурирания акаунт.
Примерът използва интерфейса за парола char-array от 5.x. По-старите фрагменти на HttpClient 4 Fluent използват различни пакети и сигнатури на методи. След завършване на заявката returnContent консумира тялото на отговора и освобождава връзката за повторно използване.