123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197 |
- package com.kingdee.eas.custom.erp.util;
- import java.io.BufferedReader;
- import java.io.InputStreamReader;
- import java.net.HttpURLConnection;
- import java.net.MalformedURLException;
- import java.net.URL;
- import com.alibaba.fastjson.JSONObject;
- import org.apache.http.HttpEntity;
- import org.apache.http.HttpResponse;
- import org.apache.http.client.methods.HttpPost;
- import org.apache.http.entity.StringEntity;
- import org.apache.http.impl.client.DefaultHttpClient;
- import org.apache.http.util.EntityUtils;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.apache.http.impl.client.HttpClients;
- import org.apache.http.impl.client.CloseableHttpClient;
- import org.apache.http.HttpStatus;
- import java.io.OutputStream;
- public class HttpsReqUtil {
- private static Logger log = LoggerFactory.getLogger(HttpsReqUtil.class);
-
- private static CloseableHttpClient httpClient;
- public static String postByHttps(String sendUrl, String param) throws Exception {
- URL url = new URL(sendUrl);
- HttpURLConnection conn = (HttpURLConnection) url.openConnection();
- conn.setRequestMethod("POST");
- conn.setDoOutput(true);
- // 设置请求头,如Content-Type
- conn.setRequestProperty("Content-Type", "application/json");
- // 发送请求参数
- //String postParams = "{\"appId\":\"gtiit_sq\",\"appSecret\":\"Kingdee@2024Kingdee@2024\",\"tenantid\":\"ierp-client\",\"accountId\":\"1917417602120941568\"}";
- byte[] outputInBytes = param.getBytes("UTF-8");
- OutputStream os = conn.getOutputStream();
- os.write(outputInBytes);
- os.close();
- // 获取响应码
- int responseCode = conn.getResponseCode();
- log.info("postByHttps.POST Response Code :: " + responseCode);
- if (responseCode == HttpURLConnection.HTTP_OK) {
- // 处理响应
- log.info("POST request succeeded");
- } else {
- log.info("POST request failed");
- }
- StringBuilder response = new StringBuilder();
- // 接收响应内容
- if (responseCode == HttpURLConnection.HTTP_OK) {
- BufferedReader in = new BufferedReader(new InputStreamReader(
- conn.getInputStream()));
- String inputLine;
- while ((inputLine = in.readLine()) != null) {
- response.append(inputLine);
- }
- in.close();
- // 打印结果
- log.info("postByHttps.POST Response:" + response.toString());
- } else {
- log.info("POST NOT Worked");
- }
- // 关闭连接
- conn.disconnect();
- return response.toString();
- }
- public static String getByHttps(String httpUrl, String requestMethod) {
- StringBuilder response = new StringBuilder();
- try {
- URL url = new URL(httpUrl);
- HttpURLConnection con = (HttpURLConnection) url.openConnection();
- // 设置请求方法
- con.setRequestMethod("GET");
- // 发送请求并获取响应码
- int responseCode = con.getResponseCode();
- // 检查响应码是否为200
- if (responseCode == HttpURLConnection.HTTP_OK) {
- // 获取输入流
- BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
- String inputLine;
- // 读取响应数据,直到没有更多数据
- while ((inputLine = in.readLine()) != null) {
- response.append(inputLine);
- }
- in.close();
- } else {
- // 响应码不是200,打印错误信息
- System.out.println("GET request not worked");
- }
- // 关闭连接
- con.disconnect();
- } catch (Exception e) {
- log.error("getByHttps.e:" + e.getMessage());
- }
- // 返回响应字符串
- return response.toString();
- }
-
-
-
- /**
- * 数据保存接口
- * @param sendUrl
- * @param param
- * @param accessToken
- * @return
- * @throws Exception
- */
- public static String postByHttps(String sendUrl, String param,String accessToken) throws Exception {
- DefaultHttpClient httpClient = new DefaultHttpClient();
- HttpPost httppost = new HttpPost(sendUrl);
- String responseMsg = null;
- log.info("postByHttps.sendUrl:" + sendUrl);
- log.info("postByHttps.param:" + param);
- log.info("postByHttps.accessToken:" + accessToken);
- try {
- StringEntity re = new StringEntity(param, "utf-8");
- re.setContentType("application/json");
- httppost.setHeader("accessToken", accessToken);
- httppost.setEntity(re);
- HttpResponse response = httpClient.execute(httppost);
- HttpEntity entity = response.getEntity();
- responseMsg = EntityUtils.toString(entity, "utf-8");
-
- log.info("postByHttps.responseMsg:" + responseMsg);
- } catch (Exception e) {
- throw new Exception("请求星瀚接口抛异常:"+e.getMessage());
- } finally {
- httpClient.getConnectionManager().shutdown();
- }
- return responseMsg;
- }
-
-
-
-
-
- public static String doPost(String url, JSONObject json) {
- try {
- httpClient = HttpClients.createDefault();
- HttpPost post = new HttpPost(url);
- post.addHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36");
- StringEntity s = new StringEntity(json.toString(), "UTF-8");
- s.setContentType("application/json");
- //设置请求参数
- post.setEntity(s);
- HttpResponse response = httpClient.execute(post);
- response.setHeader("Content-type", "text/html;charset=UTF-8");
- if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
- //返回json格式
- String res = EntityUtils.toString(response.getEntity(), "utf-8");
- return res;
- }
- } catch (Exception e) {
- e.printStackTrace();
- } finally {
- if (httpClient != null) {
- try {
- httpClient.close();
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
- return null;
- }
- }
|