From b642788dda56b058e2a4c40a9c43e29a5db85865 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期一, 14 八月 2023 09:35:28 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS/ubcs-codeApply/src/main/java/com/vci/ubcs/codeapply/utils/HttpUtil.java | 142 +++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 142 insertions(+), 0 deletions(-) diff --git a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/ubcs/codeapply/utils/HttpUtil.java b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/ubcs/codeapply/utils/HttpUtil.java index 5749c25..193cf20 100644 --- a/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/ubcs/codeapply/utils/HttpUtil.java +++ b/Source/UBCS/ubcs-codeApply/src/main/java/com/vci/ubcs/codeapply/utils/HttpUtil.java @@ -4,9 +4,11 @@ import com.alibaba.nacos.shaded.com.google.gson.JsonObject; import com.vci.ubcs.code.vo.webserviceModel.apply.InterParameterVO; import com.vci.ubcs.codeapply.object.R; +import com.vci.ubcs.codeapply.object.TokenUserObject; import org.apache.commons.collections4.CollectionUtils; import org.apache.http.*; import org.apache.http.client.ClientProtocolException; +import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpPost; @@ -16,9 +18,12 @@ import org.apache.http.impl.client.HttpClients; import org.apache.http.message.BasicNameValuePair; import org.apache.http.util.EntityUtils; +import org.apache.poi.ss.formula.functions.T; import java.io.IOException; +import java.io.UnsupportedEncodingException; import java.net.URISyntaxException; +import java.util.ArrayList; import java.util.LinkedList; import java.util.List; import java.util.Map; @@ -173,7 +178,102 @@ } return result; } + /** + * 鍙戦�丠ttpPost璇锋眰锛屽弬鏁颁负map + * @param url + * @param jsonDataStr + * @return + */ + public static R sendPost(String url, String jsonDataStr,Map<String,String> headers) { + R r=new R(); +// JsonObject formparams = new JsonObject(); +// for (Map.Entry<String, String> entry : map.entrySet()) { +// formparams.add(entry.getKey(), entry.getValue(); +// } + //json 鏍煎紡 + //UrlEncodedFormEntity entity = new UrlEncodedFormEntity(jsonDataStr, Consts.UTF_8); +// System.out.println(jsonObject.toString()); + StringEntity entity = new StringEntity(jsonDataStr, Consts.UTF_8); + HttpPost httppost = new HttpPost(url); + /* + * 娣诲姞璇锋眰澶翠俊鎭� + */ + if(headers!=null&&headers.size()>0) { + for (Map.Entry<String, String> entry : headers.entrySet()) { + httppost.addHeader(entry.getKey(), entry.getValue()); + } + } + httppost.setEntity(entity); + CloseableHttpResponse response = null; + try { + response = httpclient.execute(httppost); + } catch (IOException e) { + e.printStackTrace(); + } + HttpEntity entity1 = response.getEntity(); + String result = null; + try { + result = EntityUtils.toString(entity1, "UTF-8"); + // 浣跨敤Apache鎻愪緵鐨勫伐鍏风被杩涜杞崲鎴愬瓧绗︿覆 + if(StringUtils.isNotBlank(result)){ + r = JSONObject.toJavaObject(JSONObject.parseObject(result), R.class); + } + } catch (ParseException | IOException e) { + e.printStackTrace(); + } + return r; + } + /** + * 鍙戦�丠ttpPost璇锋眰锛屽弬鏁颁负map + * @param url + * @param map + * @return + */ + public static R sendPost(String url, Map<String,String> map,Map<String,String> headers) { + R r=new R(); +// JsonObject formparams = new JsonObject(); +// for (Map.Entry<String, String> entry : map.entrySet()) { +// formparams.add(entry.getKey(), entry.getValue(); +// } + //json 鏍煎紡 +// UrlEncodedFormEntity entity = new UrlEncodedFormEntity(formparams, Consts.UTF_8); + JsonObject jsonObject = new JsonObject(); + for(Map.Entry entry:map.entrySet()){ +// System.out.println(entry.getKey()+ "###########" + entry.getValue()); + jsonObject.addProperty(entry.getKey().toString(),entry.getValue().toString()); + } +// System.out.println(jsonObject.toString()); + StringEntity entity = new StringEntity(jsonObject.toString(), Consts.UTF_8); + HttpPost httppost = new HttpPost(url); + /* + * 娣诲姞璇锋眰澶翠俊鎭� + */ + if(headers!=null&&headers.size()>0) { + for (Map.Entry<String, String> entry : headers.entrySet()) { + httppost.addHeader(entry.getKey(), entry.getValue()); + } + } + httppost.setEntity(entity); + CloseableHttpResponse response = null; + try { + response = httpclient.execute(httppost); + } catch (IOException e) { + e.printStackTrace(); + } + HttpEntity entity1 = response.getEntity(); + String result = null; + try { + result = EntityUtils.toString(entity1, "UTF-8"); + // 浣跨敤Apache鎻愪緵鐨勫伐鍏风被杩涜杞崲鎴愬瓧绗︿覆 + if(StringUtils.isNotBlank(result)){ + r = JSONObject.toJavaObject(JSONObject.parseObject(result), R.class); + } + } catch (ParseException | IOException e) { + e.printStackTrace(); + } + return r; + } /** * 鍙戦�丠ttpPost璇锋眰锛屽弬鏁颁负map * @param url @@ -211,7 +311,49 @@ } return result; } + /** + * 鍙戦�丠ttpPost璇锋眰锛屽弬鏁颁负map + * @param url + * @param dataMap + * @return + */ + public static String sendFormPost(String url, Map<String,String> dataMap, Map<String,String> headers) { + String result = null; + try { + //json 鏍煎紡 + List<NameValuePair> nvps = new ArrayList<>(); +// + HttpPost httppost = new HttpPost(url); + if (dataMap != null && dataMap.size() > 0) { + for (Map.Entry<String, String> entry : dataMap.entrySet()) { + nvps.add(new BasicNameValuePair(entry.getKey(), entry.getValue())); + } + } + /* + * 娣诲姞璇锋眰澶翠俊鎭� + */ + if (headers != null && headers.size() > 0) { + for (Map.Entry<String, String> entry : headers.entrySet()) { + httppost.addHeader(entry.getKey(), entry.getValue()); + } + } + httppost.setEntity(new UrlEncodedFormEntity(nvps, "utf-8")); //灏嗗弬鏁颁紶鍏ost鏂规硶涓� + //httppost.setEntity(entity); + CloseableHttpResponse response = null; + response = httpclient.execute(httppost); + HttpEntity entity1 = response.getEntity(); + + result = EntityUtils.toString(entity1, "UTF-8"); + // 浣跨敤Apache鎻愪緵鐨勫伐鍏风被杩涜杞崲鎴愬瓧绗︿覆 + if (StringUtils.isNotBlank(result)) { + return result; + } + }catch (Throwable e){ + e.printStackTrace();; + } + return result; + } /** * 鍙戦�佷笉甯﹀弬鏁扮殑HttpPost璇锋眰 * @param url -- Gitblit v1.9.3