ruanweihong-aaa commented on code in PR #14036:
URL: https://github.com/apache/apisix/pull/14036#discussion_r4292916027


##########
t/node/grpc-proxy-unary.t:
##########
@@ -33,6 +33,79 @@ run_tests;
 
 __DATA__
 
+=== TEST: client-control rejects a gRPC request without Content-Length after 
internal redirect
+--- http2
+--- apisix_yaml
+routes:
+  - id: grpc-body-limit
+    uri: /helloworld.Greeter/SayHello
+    plugins:
+      client-control:
+        max_body_size: 1
+    upstream:
+      scheme: grpc
+      nodes:
+        "127.0.0.1:10051": 1
+      type: roundrobin
+#END
+--- exec
+grpcurl -import-path ./t/grpc_server_example/proto -proto helloworld.proto 
-plaintext -d '{"name":"apisix"}' 127.0.0.1:1984 helloworld.Greeter.SayHello 
2>&1
+--- response_body_like: 413
+--- error_log
+client intended to send too large chunked body
+
+
+
+=== TEST: client-control zero keeps gRPC request bodies unlimited after 
internal redirect
+--- http2
+--- extra_yaml_config
+nginx_config:
+  http:
+    client_max_body_size: 1
+--- apisix_yaml
+routes:
+  - id: grpc-no-body-limit
+    uri: /helloworld.Greeter/SayHello
+    plugins:
+      client-control:
+        max_body_size: 0
+    upstream:
+      scheme: grpc
+      nodes:
+        "127.0.0.1:10051": 1
+      type: roundrobin
+#END
+--- exec
+grpcurl -import-path ./t/grpc_server_example/proto -proto helloworld.proto 
-plaintext -d '{"name":"apisix"}' 127.0.0.1:1984 helloworld.Greeter.SayHello
+--- response_body_like: Hello apisix
+
+
+
+=== TEST: client-control raises the gRPC body limit above the global limit
+--- http2
+--- extra_yaml_config
+nginx_config:
+  http:
+    client_max_body_size: 1
+--- apisix_yaml
+routes:
+  - id: grpc-larger-body-limit
+    uri: /helloworld.Greeter/SayHello
+    plugins:
+      client-control:
+        max_body_size: 5242880
+    upstream:
+      scheme: grpc
+      nodes:
+        "127.0.0.1:10051": 1
+      type: roundrobin
+#END
+--- exec
+grpcurl -import-path ./t/grpc_server_example/proto -proto helloworld.proto 
-plaintext -d '{"name":"apisix"}' 127.0.0.1:1984 helloworld.Greeter.SayHello
+--- response_body_like: Hello apisix

Review Comment:
   同意,原来的小请求无法验证放宽限制是否生效。补充说明:提交 `adec29cd` 已按 CI 反馈修正测试配置。测试框架自带 30 MiB 的 
Nginx 请求体限制;现在两个放宽限制用例都发送 31 MiB 请求,分别使用无限制和 50 MiB 的插件配置。用例预期收到上游 gRPC 服务的 
`ResourceExhausted`(它的单条消息上限较低),以确认请求越过了 APISIX 的 30 MiB 限制并到达上游。新提交的 CI 结果仍待确认。



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to