pull/2/head
zxy 5 months ago
parent e046888abb
commit a0ab817214

@ -5,38 +5,49 @@ import java.io.InputStreamReader;
import java.net.HttpURLConnection; import java.net.HttpURLConnection;
import java.net.URL; import java.net.URL;
/** /**
* HttpClient * HttpClient
* HTTP GETURL
*/ */
public class HttpClientUtils { public class HttpClientUtils {
/** /**
* @param uri * HTTP GET
* @return String *
* @description get * @param uri URLURI
* @return null
* @description URLHttpURLConnection
*
* @author: long.he01 * @author: long.he01
*/ */
public static String doGet(String uri) { public static String doGet(String uri) {
// 使用StringBuilder来构建最终的响应结果字符串因为频繁的字符串拼接操作使用StringBuilder效率更高
StringBuilder result = new StringBuilder(); StringBuilder result = new StringBuilder();
try { try {
// 用于存储每一行读取到的响应数据
String res = ""; String res = "";
// 根据传入的URI创建URL对象
URL url = new URL(uri); URL url = new URL(uri);
// 打开与URL的连接并将其强转为HttpURLConnection类型以便进行HTTP相关的操作
HttpURLConnection conn = (HttpURLConnection) url.openConnection(); HttpURLConnection conn = (HttpURLConnection) url.openConnection();
// 创建一个BufferedReader用于从连接的输入流中读取数据指定字符编码为UTF-8
BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));
// 用于存储从输入流中读取的每一行数据
String line; String line;
// 循环读取输入流中的数据直到读取到文件末尾readLine()返回null表示文件末尾
while ((line = in.readLine()) != null) { while ((line = in.readLine()) != null) {
res += line+"\n"; // 将读取到的每一行数据拼接起来,并添加换行符
res += line + "\n";
} }
// 关闭BufferedReader释放资源
in.close(); in.close();
// 返回拼接好的响应结果字符串
return res; return res;
}catch (Exception e) { } catch (Exception e) {
// 如果在请求过程中发生异常,打印异常堆栈信息
e.printStackTrace(); e.printStackTrace();
// 请求失败返回null
return null; return null;
} }
} }
} }

Loading…
Cancel
Save