3.X是這樣的
HttpClient httpClient=new DefaultHttpClient();
4.3是這樣的
CloseableHttpClient httpClient = HttpClients.createDefault();
當然,上面這些變化只不過是一些小變化,大家看看API大家就都會了。
我要講的是超時設置,HttpClient有三種超時設置,最近比較忙,沒時間具體歸納總結,以后再補上,我這里就講一些最簡單最易用的超時設置方法。
這是個3.X的超時設置方法
HttpClient client = new HttpClient();
client.setConnectionTimeout(30000);
client.setTimeout(30000);
HttpClient httpClient= new HttpClient();
httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(5000);
4.X版本的超時設置(4.3后已過時)
HttpClient httpClient=new DefaultHttpClient();
httpClient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT,2000);//連接時間
httpClient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT,2000);//數據傳輸時間
4.3版本超時設置
CloseableHttpClient httpClient = HttpClients.createDefault();
HttpGet httpGet=new HttpGet("http://www.baidu.com");//HTTP Get請求(POST雷同)
RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(2000).setConnectTimeout(2000).build();//設置請求和傳輸超時時間
httpGet.setConfig(requestConfig);
httpClient.execute(httpGet);//執行請求
BTW,4.3版本不設置超時的話,一旦服務器沒有響應,等待時間N久(>24小時)
