如何为Apache HttpClient设置全局HTTP代理设置

4
在Apache Commons 4.3及以上版本中,您需要在HttpRequest级别上注入您的HTTP代理设置,但不是全局的,在HttpClient本身中:
RequestConfig config = RequestConfig.custom().setProxy(proxy).build();
HttpGet httpget = new HttpGet("http://url");
httpget.setConfig(config);
...

httpclient.execute(target, httpget);

问题在于,某些高级库在配置时需要传递自定义的HttpClient实例。但这并不能让你访问API代码内部构建的HttpRequest
比如,在Jolokia(一个JMX REST桥)中,你可以像这样创建客户端:
J4pClient j4pClient = new J4pClient("http://localhost:8080/jolokia", httpClient);

在这种情况下,有没有一种方法可以指定HTTP代理?http.proxyHost系统属性似乎被忽略了,我想避免在请求创建过程中创建包装器类的完整层来注入设置。

1个回答

8

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接