您的位置:首页 > 理论基础 > 计算机网络

httpClient创建对象、设置超时

2017-08-16 11:34 525 查看
从老版本和新版本进行比较说明:

1.创建HttpClient对象

3.X:

HttpClient httpClient = new DefaultHttpClient();


4.3:

CloseableHttpClient httpClient = HttpClients.createDefault();


2.超时设置:

3.X:

HttpClient httpClient = 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();
HttpPost httpPost=new HttpPost("http://www.baidu.com");    //HTTP post请求
// 请求获取数据的超时时间 、 设置从connect Manager获取Connection超时时间、设置连接超时时间
RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(10000).setConnectionRequestTimeout(3000).setConnectTimeout(10000).build();
httpPost.setConfig(requestConfig);


3.httpclient 4.3.1,当不设置 超时时间的时候

  如果请求的url是通的,但服务器没有响应,会一直等待响应;
  如果请求的url是不通的,21秒后会报:Connection timed out: connect
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: