当前位置:   article > 正文

Springboot上传图片 Processing of multipart/form-data request failed. java.io.EOFException

processing of multipart/form-data request failed. java.io.eofexception

背景

今天测试部门同事反馈上传图片的时候出现了以下错误:

org.springframework.web.multipart.MultipartException: Failed to parse multipart servlet request; nested exception is java.io.IOException: org.apache.tomcat.util.http.fileupload.impl.IOFileUploadException: Processing of multipart/form-data request failed. java.io.EOFException

另一个问题是上传图片,在加载图片时候显示下面的错误;

 分析问题及解决方案

第一个问题

在对于http的post请求来说,他需要一个临时文件来存储对post数据的存储。

因为这个目录是挂在了/temp目录下面的临时文件,而且对于一些操作系统,比如Centos会经常删除这个临时目录的,所以就会导致这目录不存在的情况。

解决方案

在我们配置文件中添加一项配置spring.servlet.multipart.location用作临时存储目录

spring:
  #文件上传大小配置 单个文件大小 总的文件大小
  servlet:
    multipart:
      max-file-size: 500MB
      max-request-size: 600MB
      location: /tools/uploadfile/tmp

然后重启我们的服务即可,如果仍未解决,那就在启动项目的参数上添加

 -java.tmp.dir=/path/to/application/temp/

第二个问题

这个问题,从错误来看是因为跨域导致的,我们只需要解决跨域问题就可以了!

解决方案

在nginx中配置他的跨域配置即可,前面我们也讲过关于nginx配置静态资源跨域的问题

今天关于这两个问题就讲到这,欢迎大家点击下方的卡片,关注《coder练习生》

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/229759
推荐阅读
相关标签
  

闽ICP备14008679号