废话不多说直接上代码
简单的使用
public static void simpleUse() throws IOException, ParseException {
//生成客户端
CloseableHttpClient httpClient = HttpClients.createDefault();
//get 请求
HttpGet httpGet = new HttpGet("http://httpbin.org/get");
//执行GET请求
CloseableHttpResponse getResponse = httpClient.execute(httpGet);
System.out.println("----------------------------------------");
System.out.println(EntityUtils.toString(getResponse.getEntity()));
// post 请求
HttpPost httpPost = new HttpPost("http://httpbin.org/post");
//执行POST请求
CloseableHttpResponse postResponse = httpClient.execute(httpPost);
System.out.println("----------------------------------------");
System.out.println(EntityUtils.toString(postResponse.getEntity()));
}
回调处理方式
public static void useWithResponseHandler() throws IOException {
//结果处理回调
final HttpClientResponseHandler<String> responseHandler = response -> {
final int status = response.getCode();
if (status >= HttpStatus.SC_SUCCESS && status < HttpStatus.SC_REDIRECTION) {
final HttpEntity entity = response.getEntity();
try {
return entity != null ? EntityUtils.toString(entity) : null;
} catch (final ParseException ex) {
throw new ClientProtocolException(ex);
}
} else {
throw new ClientProtocolException("Unexpected response status: " + status);
}
};
//生成客户端
CloseableHttpClient httpClient = HttpClients.createDefault();
//get 请求
HttpGet httpGet = new HttpGet("http://httpbin.org/get");
//执行GET请求
String getResponseBody = httpClient.execute(httpGet, responseHandler);
System.out.println("----------------------------------------");
System.out.println(getResponseBody);
// post 请求
HttpPost httpPost = new HttpPost("http://httpbin.org/post");
//执行POST请求
String postResponseBody = httpClient.execute(httpPost, responseHandler);
System.out.println("----------------------------------------");
System.out.println(postResponseBody);
}