This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
galaxy-tsg-olap-storm-log-s…/src/main/java/com/zdjizhi/utils/http/HttpClientUtil.java

78 lines
2.5 KiB
Java
Raw Normal View History

2021-03-16 14:48:07 +08:00
package com.zdjizhi.utils.http;
2020-12-25 17:32:54 +08:00
2021-03-16 14:48:07 +08:00
import cn.hutool.log.Log;
import cn.hutool.log.LogFactory;
2020-12-25 17:32:54 +08:00
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/**
* 获取网关schema的工具类
*
* @author qidaijie
*/
public class HttpClientUtil {
2021-03-25 14:27:41 +08:00
// private static final int MAX_STR_LEN = 512000;
2021-03-16 14:48:07 +08:00
private static final Log logger = LogFactory.get();
2021-03-16 10:39:23 +08:00
2020-12-25 17:32:54 +08:00
/**
* 请求网关获取schema
2021-03-25 14:27:41 +08:00
*
2020-12-25 17:32:54 +08:00
* @param http 网关url
* @return schema
*/
public static String requestByGetMethod(String http) {
CloseableHttpClient httpClient = HttpClients.createDefault();
2021-03-25 14:27:41 +08:00
StringBuilder entityStringBuilder;
2021-03-16 10:39:23 +08:00
HttpGet get = new HttpGet(http);
BufferedReader bufferedReader = null;
2021-03-25 14:27:41 +08:00
CloseableHttpResponse httpResponse = null;
try {
httpResponse = httpClient.execute(get);
2021-03-16 10:39:23 +08:00
HttpEntity entity = httpResponse.getEntity();
entityStringBuilder = new StringBuilder();
if (null != entity) {
bufferedReader = new BufferedReader(new InputStreamReader(httpResponse.getEntity().getContent(), "UTF-8"), 8 * 1024);
2021-03-25 14:27:41 +08:00
int intC;
while ((intC = bufferedReader.read()) != -1) {
char c = (char) intC;
if (c == '\n') {
break;
}
entityStringBuilder.append(c);
2020-12-25 17:32:54 +08:00
}
2021-03-25 14:27:41 +08:00
return entityStringBuilder.toString();
2020-12-25 17:32:54 +08:00
}
2021-03-25 14:27:41 +08:00
} catch (IOException e) {
logger.error("Get Schema from Query engine ERROR! Exception message is:" + e);
2020-12-25 17:32:54 +08:00
} finally {
2021-03-16 10:39:23 +08:00
if (httpClient != null) {
try {
2020-12-25 17:32:54 +08:00
httpClient.close();
2021-03-16 10:39:23 +08:00
} catch (IOException e) {
2021-03-25 14:27:41 +08:00
logger.error("Close HTTP Client ERROR! Exception messgae is:" + e);
}
}
if (httpResponse != null) {
try {
httpResponse.close();
} catch (IOException e) {
logger.error("Close httpResponse ERROR! Exception messgae is:" + e);
2020-12-25 17:32:54 +08:00
}
2021-03-16 10:39:23 +08:00
}
if (bufferedReader != null) {
org.apache.commons.io.IOUtils.closeQuietly(bufferedReader);
2020-12-25 17:32:54 +08:00
}
}
2021-03-25 14:27:41 +08:00
return "";
2020-12-25 17:32:54 +08:00
}
}