I have Java application that uses Apache HttpComponents to make web request. I have configured the application to use Proxy Servers using the JVM Property

java -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=3132

Currently my java application client makes DNS lookup in which it will fail. I want the Proxy to do the DNS resolution just like how web browsers do in automatic Proxy configuration mode (with .pac files).

有帮助吗?

解决方案 2

Try looking here: http://hc.apache.org/httpcomponents-client-ga/httpclient/examples/org/apache/http/examples/client/ClientExecuteProxy.java

It seems as though you need to specify a proxy using setProxy() and not global properties.

其他提示

Just for the record this how one can make HttpClient pick up system proxy settings

CloseableHttpClient client = HttpClients.custom()
    .setRoutePlanner(
         new SystemDefaultRoutePlanner(ProxySelector.getDefault()))
    .build();

or this if you want HttpClient fully configured based on system prperties

CloseableHttpClient client = HttpClients.createSystem();
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top