From de91c84954157bb9f8b6d938cbe0b1b51fb6e65d Mon Sep 17 00:00:00 2001
From: CeDo <cedoogle@gmail.com>
Date: 星期五, 07 五月 2021 15:23:57 +0800
Subject: [PATCH] bugfixed:新增便民服务商家 报错

---
 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/HttpClientUtil.java |  163 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 163 insertions(+), 0 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/HttpClientUtil.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/HttpClientUtil.java
index a477862..6159238 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/HttpClientUtil.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/HttpClientUtil.java
@@ -7,13 +7,24 @@
 import org.apache.http.HttpEntity;
 import org.apache.http.HttpResponse;
 import org.apache.http.client.HttpClient;
+import org.apache.http.client.methods.HttpGet;
 import org.apache.http.client.methods.HttpPost;
 import org.apache.http.entity.StringEntity;
+import org.apache.http.impl.client.DefaultHttpClient;
 import org.apache.http.message.BasicHeader;
 import org.apache.http.util.EntityUtils;
 import org.springframework.util.ObjectUtils;
 
+import java.io.BufferedReader;
 import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.OutputStreamWriter;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.net.URLConnection;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
 
 /**
  * @program: springcloud_k8s_panzhihuazhihuishequ
@@ -86,5 +97,157 @@
 
     }
 
+    /**
+     * 使用http请求调用接口,参数类型为xml
+     * @param urlStr    请求地址
+     * @param data  请求参数
+     * @return  调用结果
+     */
+    public static String httpsRequest(String urlStr,String data) {
+        try {
+            URL url = new URL(urlStr);
+            URLConnection con = url.openConnection();
+            con.setDoOutput(true);
+//            con.setRequestProperty("Pragma:", "no-cache");
+            con.setRequestProperty("Cache-Control", "no-cache");
+            con.setRequestProperty("Content-Type", "text/xml");
+
+            OutputStreamWriter out = new OutputStreamWriter(con
+                    .getOutputStream());
+            log.info("urlStr=" + urlStr);
+            log.info("xmlInfo=" + data);
+            out.write(new String(data.getBytes("UTF-8")));
+            out.flush();
+            out.close();
+            BufferedReader br = new BufferedReader(new InputStreamReader(con
+                    .getInputStream()));
+            String line = "";
+            StringBuffer sb = new StringBuffer();
+            for (line = br.readLine(); line != null; line = br.readLine()) {
+                sb.append(line);
+            }
+            return sb.toString();
+        } catch (MalformedURLException e) {
+            e.printStackTrace();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return "";
+    }
+
+
+    /**
+     * http请求工具类,get请求
+     *
+     * @param url
+     * @param params
+     * @param resonseCharSet
+     * @return
+     * @throws Exception
+     */
+    public static String httpGet(String url, Map<String, Object> params, String... resonseCharSet) throws Exception {
+        DefaultHttpClient defaultHttpClient = null;
+        BufferedReader bufferedReader = null;
+        try {
+            defaultHttpClient = new DefaultHttpClient();
+            if (params != null) {
+                StringBuilder stringBuilder = new StringBuilder();
+                Iterator<String> iterator = params.keySet().iterator();
+                String key;
+                while (iterator.hasNext()) {
+                    key = iterator.next();
+                    Object val = params.get(key);
+                    if (val instanceof List) {
+                        List v = (List) val;
+                        for (Object o : v) {
+                            stringBuilder.append(key).append("=").append(o.toString()).append("&");
+                        }
+                    } else {
+                        stringBuilder.append(key).append("=").append(val.toString()).append("&");
+                    }
+                }
+                stringBuilder.deleteCharAt(stringBuilder.length() - 1);
+                url = url + "?" + stringBuilder.toString();
+                log.info("url:{}", url);
+            }
+            HttpGet httpGet = new HttpGet(url);
+            httpGet.setHeader("Content-Type", "application/json;charset=ut-8");
+            HttpResponse httpResponse = defaultHttpClient.execute(httpGet);
+            if (httpResponse.getStatusLine().getStatusCode() != 200) {
+                String errorLog = "请求失败,errorCode:" + httpResponse.getStatusLine().getStatusCode();
+                log.info(errorLog);
+                throw new Exception(url + errorLog);
+            }
+            //读取返回信息
+            String charSet = "utf-8";
+            if (resonseCharSet != null && resonseCharSet.length > 0)
+                charSet = resonseCharSet[0];
+            String output;
+            bufferedReader = new BufferedReader(new InputStreamReader(httpResponse.getEntity().getContent(), charSet));
+
+            StringBuilder dataBuilder = new StringBuilder();
+            while ((output = bufferedReader.readLine()) != null) {
+                dataBuilder.append(output);
+            }
+            return dataBuilder.toString();
+        } catch (IOException e) {
+            e.printStackTrace();
+            throw e;
+        } finally {
+            if (defaultHttpClient != null)
+                defaultHttpClient.getConnectionManager().shutdown();
+            if (bufferedReader != null)
+                bufferedReader.close();
+        }
+    }
+
+    /**
+     * http请求工具类,post请求
+     *
+     * @param url    url
+     * @param param 参数值 仅支持String
+     * @return
+     * @throws Exception
+     */
+    public static String httpPost(String url, String param) throws Exception {
+        DefaultHttpClient defaultHttpClient = null;
+        BufferedReader bufferedReader = null;
+        try {
+            defaultHttpClient = new DefaultHttpClient();
+            HttpPost httpPost = new HttpPost(url);
+            httpPost.setHeader("Content-Type", "application/json;charset=ut-8");
+            if (StringUtils.isNotBlank(param)) {
+                log.info("参数值:{}", param);
+                HttpEntity httpEntity = new StringEntity(param, "utf-8");
+                httpPost.setEntity(httpEntity);
+            }
+            HttpResponse httpResponse = defaultHttpClient.execute(httpPost);
+            if (httpResponse.getStatusLine().getStatusCode() != 200) {
+                String errorLog = "请求失败,errorCode:" + httpResponse.getStatusLine().getStatusCode();
+                log.info(errorLog);
+                throw new Exception(url + errorLog);
+            }
+            //读取返回信息
+            String output;
+            bufferedReader = new BufferedReader(new InputStreamReader(httpResponse.getEntity().getContent(), "utf-8"));
+            StringBuilder stringBuilder = new StringBuilder();
+            while ((output = bufferedReader.readLine()) != null) {
+                stringBuilder.append(output);
+            }
+            log.info("调用微信接口返回的参数:" + stringBuilder.toString());
+            return stringBuilder.toString();
+        } catch (IOException e) {
+            e.printStackTrace();
+            throw e;
+        } finally {
+            if (defaultHttpClient != null)
+                defaultHttpClient.getConnectionManager().shutdown();
+            if (bufferedReader != null)
+                bufferedReader.close();
+        }
+    }
+
+
+
 
 }

--
Gitblit v1.7.1