目录

后端实现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("失败");
                }
            }
        }
    }
}