当前位置: 首页 > 知识库问答 >
问题:

如何设置上传文件的最大大小

景成和
2023-03-14

我正在使用JHipster开发基于Spring Boot和AngularJS的应用程序。我的问题是如何设置上传文件的最大大小?

如果我试图上传到大文件,我会在控制台中获得以下信息:

  DEBUG 11768 --- [io-8080-exec-10] c.a.app.aop.logging.LoggingAspect: 

Enter: com.anuglarspring.app.web.rest.errors.ExceptionTranslator.processRuntimeException() with argument[s] = 

[org.springframework.web.multipart.MultipartException: Could not parse multipart servlet request; nested exception is java.lang.IllegalStateException: 

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

和状态为500的服务器响应。

怎么设置?

共有3个答案

姚高韵
2023-03-14

对于Spring护套2,确保您正在使用spring。servlet而不是spring。http

---
spring:
  servlet:
    multipart:
      max-file-size: 10MB
      max-request-size: 10MB

如果必须使用tomcat,那么最终可能会创建EmbeddedServletContainerCustomizer,这并不是一件很好的事情。

如果你可以没有tomat生活,你可以用例如undertow来代替tomcat,并完全避免这个问题。

云煌
2023-03-14

在Spring靴2中,Spring。http。多部分更改为spring。servlet。多部分

https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.0.0-M1-Release-Notes#multipart-配置

松俊才
2023-03-14

同样在Spring Boot1.4中,您可以在application.properties中添加以下行来设置文件大小限制:

spring.http.multipart.max-file-size=128KB
spring.http.multipart.max-request-size=128KB

用于Spring护套2。x及以上

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

为我工作。资料来源:https://spring.io/guides/gs/uploading-files/

更新:

有人问这两种财产的区别。

以下是正式定义:

MaxFileSize:允许上载文件的最大大小,以字节为单位。如果任何上载文件的大小大于此大小,web容器将引发异常(IllegalStateException)。默认大小是无限的。

Max刚需大小:多部分/表单数据请求允许的最大大小,以字节为单位。如果所有上传文件的总大小超过此阈值,Web容器将引发异常。默认大小是无限的。

要解释每一点:

MaxFileSize:单个文件上载的限制。这仅适用于单个文件限制。

最大请求大小:单个上载请求中所有文件的总大小限制。这将检查总限制。假设您有两个文件a.txt,b.txt一个上传请求。a.txt是5kb,b.txt是7kb,所以Max刚需大小应该高于12kb。

 类似资料:
  • 我没有任何方法在接口中获取文件大小。那么,有什么方法可以限制webflux中上传文件的最大大小,而不是复制它呢?我知道有像这样的标题,但是看起来并不安全。

  • 您可以使用基于浏览器的上传(不是多部分上传)中的内容长度范围字段来限制文件大小:http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-HTTPPOSTConstructPolicy.html 你怎么能在多部分上传中限制它?我正在使用EvaporateJS。

  • 问题内容: 我有一个无法访问的PC上托管的网站。我有一个上传表单,允许人们上传最大30MB的mp3文件。我的服务器端脚本是用PHP完成的。 每次尝试上传文件时,都会收到一条错误消息,声称文件超出了允许的最大大小,因此我需要增加大小。我在网络上的研究建议更改我无权访问的文件,这样将无法正常工作。其他人建议我将自定义文件添加到我的根目录中,该文件无效。还有其他建议吗? 问题答案: 您需要设置的值,并在

  • 我正在运行一个WordPress站点(不是MU),我在php中设置了upload\u max\u filesize=50M,post\u max\u size=50M。伊尼。phpinfo()函数的结果显示该值为50M,但在WordPress Media uploader中,最大上载文件大小仍然为32M。 我也尝试在主题的functions.php写这段代码: @ini_设置(“上传最大尺寸”,“

  • 我想上传100MB以上的文件。

  • 问题内容: 我正在尝试在JSP / Struts2中实现文件上传,但我注意到了一个奇怪的行为。我在struts.xml中以这种方式声明了将文件大小限制为1MB的操作 它工作得很好,非图像文件和1MB以上的图像都会引发错误。唯一的问题是,太大的文件在删除之前还是已完全上传到服务器的temp文件夹中。 有没有办法在达到限制后立即停止上传? 编辑: 四元数的解决方案有效,当请求超过了下一行所设置的最大值