From 4f73e93990627bc78b4a8b20cc99ae4ddad317c1 Mon Sep 17 00:00:00 2001 From: weiweiw <14335254+weiweiw22@user.noreply.gitee.com> Date: Mon, 23 Sep 2024 18:00:30 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8DMyfilter=20=E9=87=8C=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=E8=AF=BB=E5=BC=95=E5=85=A5=E7=9A=84www=20=E7=9A=84bod?= =?UTF-8?q?y=E4=BC=A0=E4=B8=8D=E5=88=B0=E5=90=8E=E7=AB=AF=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/bonus/common/security/config/MyFilter.java | 5 +++-- .../common/security/interceptor/ReadHttpRequestWrapper.java | 6 +++++- ...ngframework.boot.autoconfigure.AutoConfiguration.imports | 1 + 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/config/MyFilter.java b/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/config/MyFilter.java index fbcd192..d57a295 100644 --- a/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/config/MyFilter.java +++ b/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/config/MyFilter.java @@ -25,7 +25,8 @@ public class MyFilter extends OncePerRequestFilter { @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { - if (SystemGlobal.POST.equals(request.getMethod()) || SystemGlobal.PUT.equals(request.getMethod()) ){ +// System.out.print("MyFilter doFilterInternal"); + if (SystemGlobal.POST.equals(request.getMethod()) || SystemGlobal.PUT.equals(request.getMethod()) ){ //去除文件上传 String header = request.getHeader(HttpHeaders.CONTENT_TYPE); if(StringUtils.isNotEmpty(header)){ @@ -35,7 +36,7 @@ public class MyFilter extends OncePerRequestFilter { } } //解决 无法流重复读取的问题 - ReadHttpRequestWrapper requestWrapper = new ReadHttpRequestWrapper(request); + ReadHttpRequestWrapper requestWrapper = new ReadHttpRequestWrapper(request, request.getParameterMap()); filterChain.doFilter(requestWrapper, response); }else{ filterChain.doFilter(request, response); diff --git a/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/interceptor/ReadHttpRequestWrapper.java b/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/interceptor/ReadHttpRequestWrapper.java index 1ecc671..8d0b7c0 100644 --- a/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/interceptor/ReadHttpRequestWrapper.java +++ b/bonus-common/bonus-common-security/src/main/java/com/bonus/common/security/interceptor/ReadHttpRequestWrapper.java @@ -8,6 +8,7 @@ import java.io.BufferedReader; import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStreamReader; +import java.util.Map; /** * @@ -17,11 +18,13 @@ public class ReadHttpRequestWrapper extends HttpServletRequestWrapper { private final String body; + private final Map parameters; + /** * * @param request */ - public ReadHttpRequestWrapper(HttpServletRequest request) throws IOException { + public ReadHttpRequestWrapper(HttpServletRequest request,Map parameters) throws IOException { super(request); StringBuilder sb = new StringBuilder(); BufferedReader reader = request.getReader(); @@ -29,6 +32,7 @@ public class ReadHttpRequestWrapper extends HttpServletRequestWrapper { while((readCount = reader.readLine()) != null){ sb.append(readCount); } + this.parameters = parameters; body = sb.toString(); } diff --git a/bonus-common/bonus-common-security/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/bonus-common/bonus-common-security/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports index bdd686e..b5c4610 100644 --- a/bonus-common/bonus-common-security/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ b/bonus-common/bonus-common-security/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -1,3 +1,4 @@ +#com.bonus.common.security.config.MyFilter com.bonus.common.security.config.WebMvcConfig com.bonus.common.security.config.VerificationCodeConfig com.bonus.common.security.service.TokenService