HtttpClient使用例子
说明
- 因为不懂,所以记录
- 使用的是org.apache.httpcomponents而非org.apache.commons。至于原因,apache说“httpcomponents是升级版,很牛,强烈建议亲们用httpcomponents,还有,commons已死”
- httpcomponents的版本,不知道具体哪个版本以后是都OK的,但是以下版本之后肯定是可以的;
httpclient: 4.5
httpcore:4.4.3
POST请求:
HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();
CloseableHttpClient httpClient = httpClientBuilder.build();
HttpPost post = new HttpPost(url);
try {
List <NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair(“para1”, "“para1”"));
params.add(new BasicNameValuePair("para2", “para2”));
HttpEntity entity = new UrlEncodedFormEntity(params, Charset.forName("UTF-8"));
post.setEntity(entity);
CloseableHttpResponse response = httpClient.execute(post);
ObjectMapper mapper = new ObjectMapper();
JsonNode root = mapper.readTree(response.getEntity().getContent());
if (null != root) {
String respPara1 = root.get("respPara1").asText();
String respPara2 = ak.get("respPara2").asText();
}
} finally {
post.releaseConnection();
httpClient.close();
}
GET请求:
HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();
CloseableHttpClient httpClient = httpClientBuilder.build();
HttpGet get = new HttpGet(url);
try {=
CloseableHttpResponse response = httpClient.execute(get);
ObjectMapper mapper = new ObjectMapper();
JsonNode root = mapper.readTree(response.getEntity().getContent());
if (null != root) {
String respPara1 = root.get("respPara1").asText();
String respPara2 = ak.get("respPara2").asText();
}
} finally {
get.releaseConnection();
httpClient.close();
}