2017-01-23 158 views
2

在Apache的百科全書4.3及以後,你需要在HttpRequest水平注入你的HTTP代理設置 - 但不是全局,在HttpClient本身:如何爲Apache的HttpClient設置全局HTTP代理設置

RequestConfig config = RequestConfig.custom().setProxy(proxy).build(); 
HttpGet httpget = new HttpGet("http://url"); 
httpget.setConfig(config); 
... 

httpclient.execute(target, httpget); 

的問題在於,在一些更高級別的庫中,通過傳遞定製的HttpClient實例來進行配置。 但是,這並不能讓您訪問API代碼中構建的HttpRequest

例如,在椒(一個JMX REST橋),創建您的客戶端是這樣的:

J4pClient j4pClient = new J4pClient("http://localhost:8080/jolokia", httpClient); 

有沒有指定在這種情況下的HTTP代理服務器的方法嗎? http.proxyHost系統屬性似乎被忽略,我想避免在HttpClientHttpRequest周圍創建一個包裝類的完整層來在請求創建期間注入設置。

回答