ackage org.fh.util; | |
import java.io.BufferedReader; | |
import java.io.DataOutputStream; | |
import java.io.InputStreamReader; | |
import java.net.HttpURLConnection; | |
import java.net.URL; | |
import java.util.List; | |
import java.util.Map; | |
/** | |
* 说明:http 工具类 | |
* 作者:FH Admin | |
* from:fhadmin.cn | |
*/ | |
public class HttpUtil { | |
public static String post(String requestUrl, String accessToken, String params) | |
throws Exception { | |
String contentType = "application/x-www-form-urlencoded"; | |
return HttpUtil.post(requestUrl, accessToken, contentType, params); | |
} | |
public static String post(String requestUrl, String accessToken, String contentType, String params) | |
throws Exception { | |
String encoding = "UTF-8"; | |
if (requestUrl.contains("nlp")) { | |
encoding = "GBK"; | |
} | |
return HttpUtil.post(requestUrl, accessToken, contentType, params, encoding); | |
} | |
public static String post(String requestUrl, String accessToken, String contentType, String params, String encoding) | |
throws Exception { | |
String url = requestUrl + "?access_token=" + accessToken; | |
return HttpUtil.postGeneralUrl(url, contentType, params, encoding); | |
} | |
public static String postGeneralUrl(String generalUrl, String contentType, String params, String encoding) | |
throws Exception { | |
URL url = new URL(generalUrl); | |
// 打开和URL之间的连接 | |
HttpURLConnection connection = (HttpURLConnection) url.openConnection(); | |
connection.setRequestMethod("POST"); | |
// 设置通用的请求属性 | |
connection.setRequestProperty("Content-Type", contentType); | |
connection.setRequestProperty("Connection", "Keep-Alive"); | |
connection.setUseCaches(false); | |
connection.setDoOutput(true); | |
connection.setDoInput(true); | |
// 得到请求的输出流对象 | |
DataOutputStream out = new DataOutputStream(connection.getOutputStream()); | |
out.write(params.getBytes(encoding)); | |
out.flush(); | |
out.close(); | |
// 建立实际的连接 | |
connection.connect(); | |
// 获取所有响应头字段 | |
Map<String, List<String>> headers = connection.getHeaderFields(); | |
// 遍历所有的响应头字段 | |
for (String key : headers.keySet()) { | |
System.err.println(key + "--->" + headers.get(key)); | |
} | |
// 定义 BufferedReader输入流来读取URL的响应 | |
BufferedReader in = null; | |
in = new BufferedReader( | |
new InputStreamReader(connection.getInputStream(), encoding)); | |
String result = ""; | |
String getLine; | |
while ((getLine = in.readLine()) != null) { | |
result += getLine; | |
} | |
in.close(); | |
System.err.println("result:" + result); | |
return result; | |
} | |
} |
java http 工具类
Java
324
0
0
2022-08-21