From d3f526d68664e002318382e1503199760e4b2a79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E6=B5=B7?= <10402852@qq.com> Date: Fri, 20 Sep 2024 11:29:10 +0800 Subject: [PATCH] 'commit' --- .../Global/Controller/GlobalController.java | 10 +++--- .../com/dsideal/gw/Handler/RouterHandler.java | 34 +++++++++++++++++-- 2 files changed, 38 insertions(+), 6 deletions(-) diff --git a/ds-base/src/main/java/com/dsideal/base/Global/Controller/GlobalController.java b/ds-base/src/main/java/com/dsideal/base/Global/Controller/GlobalController.java index 45421853..4295def2 100644 --- a/ds-base/src/main/java/com/dsideal/base/Global/Controller/GlobalController.java +++ b/ds-base/src/main/java/com/dsideal/base/Global/Controller/GlobalController.java @@ -95,7 +95,6 @@ public class GlobalController extends Controller { //调用model保存 model.addGlobal(global_type_id, global_code, global_value, global_name, 1); renderJson(CommonUtil.returnMessageJson(true, "增加成功!")); - return; } /** @@ -171,7 +170,7 @@ public class GlobalController extends Controller { public void getGlobalByCodes(String global_codes) { if (CommonUtil.isBase64(global_codes)) { byte[] decode = Base64.decode(global_codes); - global_codes=new String(decode); + global_codes = new String(decode); } List records = model.getGlobalByCodes(global_codes); renderJson(CommonUtil.renderJsonForLayUI(records, records.size())); @@ -200,12 +199,15 @@ public class GlobalController extends Controller { } resultJson.put("success", true); renderJson(resultJson); - return; } catch (Exception e) { resultJson.put("success", false); resultJson.put("msg", "获取数据异常!"); renderJson(resultJson); - return; } } + + @Before({POST.class}) + public void testPost(int a) { + renderJson(CommonUtil.returnMessageJson(true, "保存成功!a=" + a)); + } } \ No newline at end of file diff --git a/ds-gw/src/main/java/com/dsideal/gw/Handler/RouterHandler.java b/ds-gw/src/main/java/com/dsideal/gw/Handler/RouterHandler.java index d04f08d2..1695482c 100644 --- a/ds-gw/src/main/java/com/dsideal/gw/Handler/RouterHandler.java +++ b/ds-gw/src/main/java/com/dsideal/gw/Handler/RouterHandler.java @@ -9,6 +9,7 @@ import okhttp3.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; +import java.util.Enumeration; public class RouterHandler extends Handler { @@ -38,6 +39,8 @@ public class RouterHandler extends Handler { * http://10.10.21.20:8000/ds-base/dm/getDmSchoolProperty * http://10.10.21.20:8000/ds-base/global/getGlobalList?page=1&limit=10 * + * POST + * http://10.10.21.20:8000/ds-base/global/testPost?a=100 * */ @@ -58,7 +61,21 @@ public class RouterHandler extends Handler { renderJson(res, jo); } } + public static RequestBody createRequestBody(HttpServletRequest req) { + // 创建一个FormBody.Builder来构建RequestBody + FormBody.Builder formBodyBuilder = new FormBody.Builder(); + // 遍历请求中的参数 + Enumeration parameterNames = req.getParameterNames(); + while (parameterNames.hasMoreElements()) { + String paramName = parameterNames.nextElement(); + String paramValue = req.getParameter(paramName); + formBodyBuilder.add(paramName, paramValue); + } + + // 构建RequestBody + return formBodyBuilder.build(); + } @Override public void handle(String target, HttpServletRequest req, HttpServletResponse res, boolean[] isHandled) { @@ -102,8 +119,21 @@ public class RouterHandler extends Handler { } }//处理POST请求 else if (req.getMethod().equals("POST")) { - // RequestBody body = RequestBody.create(jsonBody, MediaType.parse("application/json; charset=utf-8")); - // Request request = new Request.Builder().url(FORWARD_URL).post(body).build(); + RequestBody body = createRequestBody(req); + Request request; + if (queryString != null) { + request = new Request.Builder().url(FORWARD_URL + "?" + queryString).post(body).build(); + } else { + request = new Request.Builder().url(FORWARD_URL).post(body).build(); + } + try { + executeRequest(request, res); + } catch (IOException e) { + JSONObject jo = new JSONObject(); + jo.put("success", false); + jo.put("message", "请求失败!" + e); + renderJson(res, jo); + } } else { // MinIO - 服务端签名直传(前端 + 后端 + 效果演示) //https://blog.csdn.net/CYK_byte/article/details/140254412