【上传文件时异常】The field file exceeds its maximum permitted size of 1048576 bytes.

发布时间 2023-08-16 10:57:29作者: 小log

1、背景描述

本项目是个spring boot 项目,需要文件上传,上传的是一个 pdf文件,大小是5MB,报错内容如下:

Caused by: org.apache.tomcat.util.http.fileupload.FileUploadBase$FileSizeLimitExceededException: The field file exceeds its maximum permitted size of 1048576 bytes.

2、报错原因

显示文件的大小超出了允许的范围。原因是 SpringBoot内嵌的 tomcat 默认的所有上传的文件大小为 1MB,超出这个大小就会报错,解决这个问题需要更改以下两个默认:

# 最大上传单个文件大小:默认1M
spring.servlet.multipart.max-file-size=10MB
# 最大总上传的文件大小 :默认10M
spring.servlet.multipart.max-request-size=100MB

3、解决方案

不同的spring 版本有不同的方法:

SpringBoot 1.3.x 之前
multipart.maxFileSize=50Mb
multipart.maxRequestSize=50Mb

SpringBoot 1.4.x
spring.http.multipart.maxFileSize=50Mb
spring.http.multipart.maxRequestSize=50Mb

SpringBoot 2.0.x之后
spring.servlet.multipart.max-file-size=50MB
spring.servlet.multipart.max-request-size=50MB

 

参考:https://blog.csdn.net/weixin_44299027/article/details/126074192