From e02f6923593bd49f87caccd87e063baf312aaa3f Mon Sep 17 00:00:00 2001
From: 稚屿 <1491182878@qq.com>
Date: 星期一, 22 八月 2022 14:19:08 +0800
Subject: [PATCH] 修复菜单管理已知问题 问题描述:在菜单管理下,类型为菜单或者按钮的条目下点击修改按钮。 情况1,如果是类型为菜单,第一次点击修改按钮正常,则第二次点击另一个条目后面的修改按钮时报错! 情况2,如果是类型为按钮,第一次点击修改时正常,当点击取消按钮关闭弹窗时,浏览器报错!

---
 ruoyi-common/src/main/java/com/ruoyi/common/filter/RepeatedlyRequestWrapper.java |   16 ++++++++++------
 1 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/filter/RepeatedlyRequestWrapper.java b/ruoyi-common/src/main/java/com/ruoyi/common/filter/RepeatedlyRequestWrapper.java
index 9ad6f49..ca822ed 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/filter/RepeatedlyRequestWrapper.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/filter/RepeatedlyRequestWrapper.java
@@ -10,6 +10,7 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequestWrapper;
 import com.ruoyi.common.utils.http.HttpHelper;
+import com.ruoyi.common.constant.Constants;
 
 /**
  * 鏋勫缓鍙噸澶嶈鍙杋nputStream鐨剅equest
@@ -23,10 +24,10 @@
     public RepeatedlyRequestWrapper(HttpServletRequest request, ServletResponse response) throws IOException
     {
         super(request);
-        request.setCharacterEncoding("UTF-8");
-        response.setCharacterEncoding("UTF-8");
+        request.setCharacterEncoding(Constants.UTF8);
+        response.setCharacterEncoding(Constants.UTF8);
 
-        body = HttpHelper.getBodyString(request).getBytes("UTF-8");
+        body = HttpHelper.getBodyString(request).getBytes(Constants.UTF8);
     }
 
     @Override
@@ -38,12 +39,9 @@
     @Override
     public ServletInputStream getInputStream() throws IOException
     {
-
         final ByteArrayInputStream bais = new ByteArrayInputStream(body);
-
         return new ServletInputStream()
         {
-
             @Override
             public int read() throws IOException
             {
@@ -51,6 +49,12 @@
             }
 
             @Override
+            public int available() throws IOException
+            {
+                return body.length;
+            }
+
+            @Override
             public boolean isFinished()
             {
                 return false;

--
Gitblit v1.9.3