HttpClient 5.0 設定超時時間需要使用RequestConfig類,具體方法如下:
RequestConfig requestConfig = RequestConfig.custom().setConnectionRequestTimeout(10000, TimeUnit.MILLISECONDS).setConnectTimeout(10000, TimeUnit.MILLISECONDS).setResponseTimeout(10000, TimeUnit.MILLISECONDS).build();
相對于HttpClient 4.X版本,setConnectionTimeout方法需要多傳一個引數:TimeUnit(時間單位);
TimeUnit的值有:

注意:HttpClient 5.0 版本沒有setSocketTimeout方法(獲取資料的超時時間);
如不設定超時時間,默認時間是3分鐘

具體使用步驟:
RequestConfig requestConfig = RequestConfig.custom().setConnectionRequestTimeout(10000, TimeUnit.MILLISECONDS).setConnectTimeout(10000, TimeUnit.MILLISECONDS).setResponseTimeout(10000, TimeUnit.MILLISECONDS).build();
//HttpClients.createDefault()等價于 HttpClientBuilder.create().build();
CloseableHttpClient closeableHttpClient = HttpClients.custom().setDefaultRequestConfig(requestConfig).build();
或者:
RequestConfig requestConfig = RequestConfig.custom().setConnectionRequestTimeout(10000, TimeUnit.MILLISECONDS).setConnectTimeout(10000, TimeUnit.MILLISECONDS).setResponseTimeout(10000, TimeUnit.MILLISECONDS).build();
HttpPost httpost = new HttpPost(url);
httpost.setConfig(requestConfig);
新手程式員一枚,如有寫錯,望各位指正~
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/179252.html
標籤:Java
