我有使用Apache HttpComponents发出Web请求的Java应用程序。 我已将应用程序配置为使用JVM属性
来使用代理服务器 java -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=3132
目前,我的Java应用程序客户端进行DNS查找,它将失败。 我希望代理执行DNS解析,就像Web浏览器在自动代理配置模式下(使用.pac文件)一样。
答案 0 :(得分:2)
只是为了记录这个如何让HttpClient获取系统代理设置
CloseableHttpClient client = HttpClients.custom()
.setRoutePlanner(
new SystemDefaultRoutePlanner(ProxySelector.getDefault()))
.build();
或者如果你想根据系统属性完全配置HttpClient
CloseableHttpClient client = HttpClients.createSystem();
答案 1 :(得分:1)
好像你需要使用setProxy()而不是全局属性来指定代理。