From 37540fab60234f5050397336671e264a02458f7d Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期二, 19 八月 2025 13:41:48 +0800
Subject: [PATCH] 测试环境数据库
---
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/uitil/HttpUtils.java | 174 ++++++++++++++++++++++++++++++---------------------------
1 files changed, 92 insertions(+), 82 deletions(-)
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/uitil/HttpUtils.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/uitil/HttpUtils.java
index cb464c1..df3f77b 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/uitil/HttpUtils.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/uitil/HttpUtils.java
@@ -1,9 +1,11 @@
package org.dromara.system.uitil;
+import cn.hutool.json.JSON;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.methods.PostMethod;
import org.apache.commons.httpclient.methods.StringRequestEntity;
+import org.apache.commons.io.IOUtils;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpPost;
@@ -13,44 +15,18 @@
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.util.EntityUtils;
import org.dromara.common.oss.entity.SynchronousRequest;
+import org.dromara.common.oss.entity.SynchronousRequest2;
+import org.dromara.common.oss.entity.VideoRequest;
import org.springframework.web.multipart.MultipartFile;
import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
import java.util.HashMap;
public class HttpUtils {
- public static String sendPostWithJson(String url, String jsonStr, HashMap<String,String> headers) {
- // 杩斿洖鐨勭粨鏋�
- String jsonResult = "";
- try {
- HttpClient client = new HttpClient();
- // 杩炴帴瓒呮椂
- client.getHttpConnectionManager().getParams().setConnectionTimeout(3*1000);
- // 璇诲彇鏁版嵁瓒呮椂
- client.getHttpConnectionManager().getParams().setSoTimeout(3*60*1000);
- client.getParams().setContentCharset("UTF-8");
- PostMethod postMethod = new PostMethod(url);
-
- postMethod.setRequestHeader("content-type", headers.get("content-type"));
-
- // 闈炵┖
- if (null != jsonStr && !"".equals(jsonStr)) {
- StringRequestEntity requestEntity = new StringRequestEntity(jsonStr, headers.get("content-type"), "UTF-8");
- postMethod.setRequestEntity(requestEntity);
- }
- int status = client.executeMethod(postMethod);
- if (status == HttpStatus.SC_OK) {
- jsonResult = postMethod.getResponseBodyAsString();
- } else {
- throw new RuntimeException("鎺ュ彛杩炴帴澶辫触锛�");
- }
- } catch (Exception e) {
- throw new RuntimeException("鎺ュ彛杩炴帴澶辫触锛�");
- }
- return jsonResult;
- }
private static final String BOUNDARY = "----WebKitFormBoundary7MA4YWxkTrZu0gW";
private static final String LINE_FEED = "\r\n";
@@ -62,59 +38,8 @@
return file;
}
- public static void sendPostRequest(String url, String stringParam, File fileParam) throws Exception {
-
- URL obj = new URL(url);
- HttpURLConnection con = (HttpURLConnection) obj.openConnection();
-
- // 璁剧疆POST璇锋眰
- con.setRequestMethod("POST");
- con.setDoOutput(true);
- con.setDoInput(true);
- con.setRequestProperty("Content-Type", "multipart/form-data; boundary=" + BOUNDARY);
-
- // 鏋勫缓璇锋眰浣�
- DataOutputStream wr = new DataOutputStream(con.getOutputStream());
- wr.writeBytes("--" + BOUNDARY + LINE_FEED);
- wr.writeBytes("Content-Disposition: form-data; name=\"stringParam\"" + LINE_FEED);
- wr.writeBytes(LINE_FEED);
- wr.writeBytes(stringParam + LINE_FEED);
-
- wr.writeBytes("--" + BOUNDARY + LINE_FEED);
- wr.writeBytes("Content-Disposition: form-data; name=\"fileParam\"; filename=\"" + fileParam.getName() + "\"" + LINE_FEED);
- wr.writeBytes("Content-Type: " + HttpURLConnection.guessContentTypeFromName(fileParam.getName()) + LINE_FEED);
- wr.writeBytes("Content-Transfer-Encoding: binary" + LINE_FEED);
- wr.writeBytes(LINE_FEED);
-
- FileInputStream inputStream = new FileInputStream(fileParam);
- byte[] buffer = new byte[4096];
- int bytesRead = -1;
- while ((bytesRead = inputStream.read(buffer)) != -1) {
- wr.write(buffer, 0, bytesRead);
- }
- wr.writeBytes(LINE_FEED);
- wr.writeBytes("--" + BOUNDARY + "--" + LINE_FEED);
-
- wr.flush();
- wr.close();
-
- // 鍙戦�佽姹傚苟鑾峰彇鍝嶅簲
- int responseCode = con.getResponseCode();
- BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
- String inputLine;
- StringBuffer response = new StringBuffer();
- while ((inputLine = in.readLine()) != null) {
- response.append(inputLine);
- }
- in.close();
-
- // 鎵撳嵃鍝嶅簲缁撴灉
- System.out.println("Response Code : " + responseCode);
- System.out.println("Response : " + response.toString());
- }
-
/**
- * 涓婁紶鍚屾
+ * 涓婁紶鍚屾 瑙嗛涓撶綉 -- 鍏畨鍐呯綉
* @param url
* @param entity
* @return
@@ -124,6 +49,7 @@
org.apache.http.client.HttpClient httpClient = HttpClientBuilder.create().build();
HttpPost httpPost = new HttpPost(url);
+ ContentType contentType = ContentType.create("multipart/form-data", StandardCharsets.UTF_8);
MultipartEntityBuilder builder = MultipartEntityBuilder.create();
builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
@@ -135,6 +61,8 @@
builder.addTextBody("ossId", entity.getOssId(), ContentType.TEXT_PLAIN);
builder.addTextBody("createBy", entity.getCreateBy(), ContentType.TEXT_PLAIN);
builder.addTextBody("password", entity.getPassword(), ContentType.TEXT_PLAIN);
+ builder.addTextBody("fileName", entity.getFileName(), contentType);
+ builder.addTextBody("createTime", entity.getCreateTime(), ContentType.TEXT_PLAIN);
HttpEntity multipart = builder.build();
httpPost.setEntity(multipart);
@@ -144,6 +72,37 @@
System.out.println("Response: " + responseBody);
return responseBody;
}
+
+ /**
+ * 涓婁紶鍚屾 瑙嗛涓撶綉
+ * @param url
+ * @param entity
+ * @return
+ * @throws IOException
+ */
+ public static String sendPostRequest2(String url, VideoRequest entity) throws IOException {
+ org.apache.http.client.HttpClient httpClient = HttpClientBuilder.create().build();
+ HttpPost httpPost = new HttpPost(url);
+
+ ContentType contentType = ContentType.create("multipart/form-data", StandardCharsets.UTF_8);
+ MultipartEntityBuilder builder = MultipartEntityBuilder.create();
+ builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
+
+ // 娣诲姞MultipartFile鍙傛暟
+ builder.addBinaryBody("file", entity.getFile().getBytes(), ContentType.MULTIPART_FORM_DATA, entity.getFile().getOriginalFilename());
+
+ // 娣诲姞String鍙傛暟
+ builder.addTextBody("fileName", entity.getFileName(), contentType);
+
+ HttpEntity multipart = builder.build();
+ httpPost.setEntity(multipart);
+
+ HttpResponse response = httpClient.execute(httpPost);
+ String responseBody = EntityUtils.toString(response.getEntity());
+ System.out.println("Response: " + responseBody);
+ return responseBody;
+ }
+
/**
* 鍒犻櫎鍚屾
@@ -172,5 +131,56 @@
System.out.println("Response: " + responseBody);
return responseBody;
}
+
+
+ /**
+ * 涓婁紶鍚屾 瑙嗛涓撶綉 -- 鍏畨鍐呯綉锛堝畾鏃讹級
+ * @param url
+ * @param entity
+ * @return
+ * @throws IOException
+ */
+ public static String sendPostRequest2(String url, SynchronousRequest entity, byte[] bytes) throws IOException {
+ org.apache.http.client.HttpClient httpClient = HttpClientBuilder.create().build();
+ HttpPost httpPost = new HttpPost(url);
+
+ ContentType contentType = ContentType.create("multipart/form-data", StandardCharsets.UTF_8);
+ MultipartEntityBuilder builder = MultipartEntityBuilder.create();
+ builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
+
+ // 娣诲姞MultipartFile鍙傛暟
+ builder.addBinaryBody("file", bytes, ContentType.MULTIPART_FORM_DATA, entity.getFileName());
+
+ // 娣诲姞String鍙傛暟
+ builder.addTextBody("path", entity.getPath(), ContentType.TEXT_PLAIN);
+ builder.addTextBody("ossId", entity.getOssId(), ContentType.TEXT_PLAIN);
+ builder.addTextBody("createBy", entity.getCreateBy(), ContentType.TEXT_PLAIN);
+ builder.addTextBody("password", entity.getPassword(), ContentType.TEXT_PLAIN);
+ builder.addTextBody("fileName", entity.getFileName(), contentType);
+ builder.addTextBody("createTime", entity.getCreateTime(), ContentType.TEXT_PLAIN);
+
+ HttpEntity multipart = builder.build();
+ httpPost.setEntity(multipart);
+
+ HttpResponse response = httpClient.execute(httpPost);
+ String responseBody = EntityUtils.toString(response.getEntity());
+ System.out.println("Response: " + responseBody);
+ return responseBody;
+ }
+
+ /**
+ * @param input 杈撳叆娴�
+ * @return byte[] 鏁扮粍
+ */
+ public static byte[] inputStream2byte(InputStream input) throws IOException {
+ ByteArrayOutputStream output = new ByteArrayOutputStream();
+ byte[] buffer = new byte[4096];
+ int n = 0;
+ while (-1 != (n = input.read(buffer))) {
+ output.write(buffer, 0, n);
+ }
+ return output.toByteArray();
+ }
+
}
--
Gitblit v1.8.0