Browse Source

任务添加修改大请求数据参数,不进行缓冲区缓冲,直接传递

master
wangguangyuan 6 months ago
parent
commit
2ae1b6d9c3
1 changed files with 8 additions and 1 deletions
  1. +8
    -1
      inspect-gateway/src/main/java/com/inspect/gateway/filter/RequestParamGlobalFilter.java

+ 8
- 1
inspect-gateway/src/main/java/com/inspect/gateway/filter/RequestParamGlobalFilter.java View File

@ -31,7 +31,14 @@ public class RequestParamGlobalFilter implements GlobalFilter, Ordered {
HttpHeaders headers = request.getHeaders();
MediaType contentType = headers.getContentType();
long contentLength = headers.getContentLength();
return contentLength <= 0L || !MediaType.APPLICATION_JSON.equals(contentType) && !MediaType.APPLICATION_JSON_UTF8.equals(contentType) ? chain.filter(exchange) : this.readBody(exchange, chain);
final String uriPath = request.getURI().getPath();
return contentLength <= 0L
|| !MediaType.APPLICATION_JSON.equals(contentType) && !MediaType.APPLICATION_JSON_UTF8.equals(contentType)
|| uriPath.contains("/task/add")
|| uriPath.contains("/task/save")
?
chain.filter(exchange) :
this.readBody(exchange, chain);
}
private Mono<Void> readBody(ServerWebExchange exchange, GatewayFilterChain chain) {


Loading…
Cancel
Save