Browse Source

fix: 修复上传文件失败

Walker 1 year ago
parent
commit
3066e61852

+ 4 - 1
src/main/java/com/ywt/gateway/filter/GlobalCountAndLogFilter.java

@@ -18,6 +18,7 @@ import org.springframework.core.ResolvableType;
 import org.springframework.core.io.buffer.*;
 import org.springframework.http.HttpHeaders;
 import org.springframework.http.MediaType;
+import org.springframework.http.codec.CodecConfigurer;
 import org.springframework.http.codec.HttpMessageReader;
 import org.springframework.http.codec.multipart.FormFieldPart;
 import org.springframework.http.codec.multipart.Part;
@@ -50,7 +51,9 @@ import java.util.*;
 @Slf4j
 @Component
 public class GlobalCountAndLogFilter implements GlobalFilter, Ordered {
-    private final List<HttpMessageReader<?>> messageReaders = HandlerStrategies.withDefaults().messageReaders();
+    @Autowired
+    private CodecConfigurer codecConfigurer;
+    private final List<HttpMessageReader<?>> messageReaders = codecConfigurer.getReaders();
     private final Logger logger = LoggerFactory.getLogger(GlobalCountAndLogFilter.class);
     public static final String COUNTER_QUEUE_NAME = "gw:counter-queue";
     public static final String LOG_QUEUE_NAME = "gw:log-queue";

+ 5 - 1
src/main/java/com/ywt/gateway/filter/RequestParamGlobalFilter.java

@@ -2,12 +2,14 @@ package com.ywt.gateway.filter;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.cloud.gateway.filter.GatewayFilterChain;
 import org.springframework.cloud.gateway.filter.GlobalFilter;
 import org.springframework.core.Ordered;
 import org.springframework.core.io.buffer.DataBuffer;
 import org.springframework.core.io.buffer.DataBufferUtils;
 import org.springframework.http.HttpHeaders;
+import org.springframework.http.codec.CodecConfigurer;
 import org.springframework.http.codec.HttpMessageReader;
 import org.springframework.http.server.reactive.ServerHttpRequest;
 import org.springframework.http.server.reactive.ServerHttpRequestDecorator;
@@ -28,6 +30,8 @@ import java.util.List;
  */
 @Component
 public class RequestParamGlobalFilter implements GlobalFilter, Ordered {
+    @Autowired
+    private CodecConfigurer codecConfigurer;
 
     private static final Logger log = LoggerFactory.getLogger(RequestParamGlobalFilter.class);
 
@@ -53,7 +57,7 @@ public class RequestParamGlobalFilter implements GlobalFilter, Ordered {
     /**
      * default HttpMessageReader
      */
-    private static final List<HttpMessageReader<?>> messageReaders = HandlerStrategies.withDefaults().messageReaders();
+    private final List<HttpMessageReader<?>> messageReaders = codecConfigurer.getReaders();
     /**
      * ReadJsonBody
      *