增加 HTTP Post maxPostSize in Spring Boot

2022-08-31 15:19:07

我有一个相当简单的Spring Boot Web应用程序,我有一个带有.我收到此错误:enctype="multipart/form-data"

多部分请求包含的参数数据(不包括上载的文件)超出了在关联连接器上设置的 maxPostSize 的限制。

我正在使用Spring Boot的默认嵌入式tomcat服务器。显然,默认值为 2 MB。有没有办法编辑此值?通过这样做是最好的,而不必创建自定义的bean或弄乱xml文件。maxPostSizeapplication.properties


答案 1

application.properties 文件中,写下:

# Max file size.
spring.http.multipart.max-file-size=1Mb
# Max request size.
spring.http.multipart.max-request-size=10Mb

根据您的需要调整尺寸。


更新

注意:Spring Boot 2开始,但是您现在可以这样做

# Max file size.
spring.servlet.multipart.max-file-size=1MB
# Max request size.
spring.servlet.multipart.max-request-size=10MB

附录 A. 常见应用特性 - 弹簧


答案 2

如果您在 POST 请求中使用 x-www-form-urlencoded mediatype(就像我一样),则 spring-boot 的多部分属性不起作用。如果 spring-boot 应用程序也启动了 tomcat,则需要在 application.properties 文件中设置以下属性:

# Setting max size of post requests to 6MB (default: 2MB)
server.tomcat.max-http-post-size=6291456

我在 Spring-boot 文档中的任何地方都找不到该信息。希望它能帮助任何坚持使用x-www-form-urlencoded编码身体的人。


推荐