首页 > 解决方案 > 如何使用 Spring Webflux 限制请求有效负载大小?

问题描述

使用 Spring Webflux,我需要限制传入 HTTP 请求的有效负载大小(例如 5MB)。这是开箱即用的配置吗?如果没有,我们可以使用哪些 API 来实现此行为(例如,如果有效负载太大,则返回 413)。

标签: springspring-bootspring-webfluxproject-reactorreactor-netty

解决方案


我猜您想这样做是为了防止恶意或行为不端的客户端进行拒绝服务攻击。

通常的建议是不直接将 HTTP 应用程序服务器连接到 Internet,而是通过 HTTP 反向代理服务器(例如适当配置的 Apache HTTPD 或 nginx)。这些代理服务器提供了阻止大型请求的方法。它们提供了其他工具来阻止或减轻不良客户的影响。

因此,您应该考虑在您的应用程序中不实现此功能是否更容易,而是依靠代理为您完成。


推荐阅读