1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- package com.ruoyi.common.utils;
- 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 工具类
- */
- 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;
- }
- }
|