From ec382a737f59877abe9fce022a9124a7897e5dd5 Mon Sep 17 00:00:00 2001 From: huanghongfa <huanghongfa123456> Date: 星期五, 23 四月 2021 16:01:19 +0800 Subject: [PATCH] 小程序新增客服功能 --- springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/HttpClientUtil.java | 118 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 118 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 7b7b08f..5bf6c6f 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,8 +7,10 @@ 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; @@ -20,6 +22,9 @@ 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 @@ -131,4 +136,117 @@ } + /** + * 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); + } + 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