Настройка явного прокси в AsyncHttpClient 2.x
Задайте ProxyServer в конфигурации AsyncHttpClient 2.12.4 до создания клиента, осознанно выбрав подход к обнаружению свойств JVM.
DefaultAsyncHttpClientConfig.Builder config = Dsl.config()
.setProxyServer(
new ProxyServer.Builder("proxy.example", 8080))
.setRequestTimeout(15000);
try (AsyncHttpClient client = Dsl.asyncHttpClient(config)) {
Response response = client.prepareGet("https://www.example.com/")
.execute().toCompletableFuture().join();
System.out.println(response.getStatusCode());
}
Это API org.asynchttpclient 2.12.4, где ProxyServer находится в пакете proxy. Для этого публичного примера с HTTPS замените посредника неаутентифицированным кандидатом из списка HTTP-прокси и настройте сайт отдельно. Конфигурация передаётся до создания клиента, и бюджет запроса в 15 секунд — часть этой настройки.
Пример ожидает future в течение времени жизни клиента. Асинхронное приложение может вместо этого скомпоновать его, но должно удерживать клиент, пока не завершится порученная ему работа.
Если поддерживаемые свойства JVM — предполагаемый источник политики, явно выберите setUseProxyProperties(true). Наличие свойства в одной среде выполнения не доказывает, что каждый клиент его включил.
Старые примеры Dispatch часто оборачивают com.ning и используют другое свойство включения. Ориентируйтесь на imports и API базового клиента, а не смешивайте ту конфигурацию с этим строителем 2.x.