spring服务form表单内容过大导致后端参数接收为null情况

问题现状

今天开发遇到一个奇怪的问题,前端的form表单数据提交的时候,数据量比较小的时候,内容能正常保存。

当数据量达到1.6M的时候,后端就开始报npe异常,参数字段就开始接收不到了。

解决

经过排查,发现这个和编程无关。
springboot 默认集成了tomcat容器,tomcat对form表单的大小有限制,默认2M。

知道了问题所在,解决起来就很简单了。
方案1: 增加tomcat的form表单容量配置

1
server.tomcat.max-http-form-post-size=10MB

方案2:去掉tomcat的form容量配置

1
server.tomcat.max-http-form-post-size=-1

参考

spring官方配置


spring服务form表单内容过大导致后端参数接收为null情况
https://www.hancher.top/2023/04/28/exception-spring-http-form-too-big-err/
作者
寒澈
发布于
2023年4月28日
许可协议