解决SpringBoot框架因post数据量过大没反应问题(踩坑)
此处网上最多的做法是需要修改tomcat的参数配置大致如下:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="2000" redirectPort="8443" URIEncoding="UTF-8" maxThreads="3000" compression="on" compressableMimeType="text/html,text/xml" maxPostSize="10240"/>
然而对springboot项目来说好像并不管用~~~~~~~~~~~~
最后在尝试下,springboot的application中加入如下两句话:OK~~~~
spring.http.multipart.max-file-size=1000Mb
spring.http.multipart.max-request-size=1000Mb
补充知识:解决springboot2.X发送post请求数量限制问题
今天在测试自己开发的新功能时,发现的一件匪夷所思的事,前台通过ajax发送post请求到后台,请求的数据量非常大,数据到后台发现,controller层对应的方法接收的数据不够,由于后台没有提示什么错误,就各种方式找问题,花费了一天的时间,最后发现了问题,问题的原因:tomcat的限制了post的请求的大小和请求参数的个数;这里记录以下springboot2.x的处理方式:
1、处理post请求的大小,在配置文件中添加如下参数;
server:
tomcat:
max-http-post-size: -1
2、处理post请求参数的个数,在springboot的启动类中,添加如下代码:
@Bean public TomcatServletWebServerFactory mbeddedServletContainerFactory() { TomcatServletWebServerFactory tomcatEmbeddedServletContainerFactory = new TomcatServletWebServerFactory (); tomcatEmbeddedServletContainerFactory.addConnectorCustomizers(connector ->{ connector.setMaxParameterCount(Integer.MAX_VALUE); }); return tomcatEmbeddedServletContainerFactory; }
以上这篇解决SpringBoot框架因post数据量过大没反应问题(踩坑)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
赞 (0)