在SpringBoot内置的tomcat中,post请求默认最大值为2M,当数据超过2M时后台就会接收到空值。
查看自己post请求数据大小:
在 Rquest类中的parseParameters方法可以看到 len=3,748,650(byte) -->约为3.57M
解决方案
方案1:配置文件
@Configuration
public class HttpMaxPostSizeConfiguration {
// Set maxPostSize of embedded tomcat server to 10 megabytes (default is 2 MB, not large enough to support file uploads > 1.5 MB)
@Bean
EmbeddedServletContainerCustomizer containerCustomizer() throws Exception {
return (ConfigurableEmbeddedServletContainer container) -> {
if (container instanceof TomcatEmbeddedServletContainerFactory) {
TomcatEmbeddedServletContainerFactory tomcat = (TomcatEmbeddedServletContainerFactory) container;
tomcat.addConnectorCustomizers(
(connector) -> {
connector.setMaxPostSize(10485760); // 10 MB
}
);
}
};
}
}
方案2:配置yaml文件
server :
tomcat:
max-http-post-size: 10485760
参考文档:https://www.cnblogs.com/yanggb/p/14754119.html?ivk_sa=1024320u