Springboot项目上传文件大小限制问题

最近项目中用到了文件图片上传操作,

前端 使用<input type="file" class="ignore" accept="image/jpeg,image/png,image/gif">  (base64字节)

后台使用String字符串进行接收(base64字节)

properties配置文件中进行文件上传大小配置

spring.http.multipart.max-file-size=20Mb  //上传文件的大小限定;只有上传采用文件格式进行接收时起作用,针对上面的base64格式图片(后台是String进行接收)不起作用;
spring.http.multipart.max-request-size=60Mb //上传请求数据的大小限定;限定请求的总数据大小

但是发现当上传文件大小大于1.5M时就会报错:
2018-06-08 11:03:19.006 ERROR 3784 --- [nio-8080-exec-8] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.web.multipart.MultipartException: Could not parse multipart servlet request; nested exception is java.lang.IllegalStateException: The multi-part request contained parameter data (excluding uploaded files) that exceeded the limit for maxPostSize set on the associated connector] with root cause

java.lang.IllegalStateException: The multi-part request contained parameter data (excluding uploaded files) that exceeded the limit for maxPostSize set on the associated connector

 经过分析发现是springboot中的内置tomcat服务器限定了Httppost的最大size

通过在properties中添加如下配置,修改该内置服务器的对HttpPost数据的大小; 成功解决该问题;

server.maxHttpHeaderSize=102400000   //设定HttpHeader请求头大小
server.maxHttpPostSize =102400000 //设定Httppost数据大小


原文地址:https://www.cnblogs.com/AnXinliang/p/9154659.html