后端实现GET请求
目录
后端实现GET请求
代码如下:
public class HttpClient {
/**
* URL
*/
@Value("${address}")
private String dataUrl;
/**
* token
*/
@Value("${token}")
private String dataToken;
public void httpClient( ) {
//创建连接
CloseableHttpClient httpClient = HttpClients.createDefault();
String entityStr = null;
HttpResponse response = null;
if (httpClient == null) {
httpClient = HttpClientBuilder.create().build();
}
try {
//拼接URL
URIBuilder uriBuilder = new URIBuilder(dataUrl.concat("URL地址"));
uriBuilder.setParameter("字段", "参数");
uriBuilder.setParameter("字段", "参数");
uriBuilder.setParameter("字段", "参数");
//GET接口请求头
HttpGet httpGet = new HttpGet(uriBuilder.build());
httpGet.addHeader("Content-type", "application/json; charset=utf-8");
httpGet.addHeader("Authorization", dataToken);
response = httpClient.execute(httpGet);
if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
//得到响应的实体对象
HttpEntity entity = response.getEntity();
//使用Apache提供的工具类进行转换成字符串
entityStr = EntityUtils.toString(entity, "UTF-8");
//规避返回数据为空的情况
if (StringUtils.isNotBlank(entityStr)) {
JSONObject.parseArray(entityStr, "Class<T> 需要转换的实体类");
}
} else {
String format = String.format("返回结果错误 %s", response.getStatusLine() + "" + uriBuilder);
}
} catch (Exception e) {
System.out.println("失败");
} finally {
//关闭httpClient
if (httpClient != null) {
try {
httpClient.close();
} catch (IOException e) {
System.out.println("失败");
}
}
}
}
}