首页 > 其他分享 >SpringBoot项目 file not present 终局!

SpringBoot项目 file not present 终局!

时间:2024-04-17 16:35:14浏览次数:39  
标签:HiddenHttpMethodFilter SpringBoot 接口 CommonsMultipartResolver file present

在写一个文件上传接口时,从一个老项目里copy出来了一个接口,死活报错 file not present,参考如下步骤排查

  1. 确保请求的http header里面的文件字段名和接口定义一致

    如果使用postman,则确定key和接口保持一致

  2. 在保证一切都是对的情况下,检查下项目是否配置了CommonsMultipartResolver,如果没有配置springboot自带的HiddenHttpMethodFilter会先于CommonsMultipartResolver读取MultipartRequest,但是如果HiddenHttpMethodFilter先读了,CommonsMultipartResolver就读不到了,具体的参考这个issue
    https://github.com/spring-projects/spring-boot/issues/2958

解决方式:
1.去除CommonsMultipartResolver使用官方的StandardServletMultipartResolver(推荐),官方的兼容是最好的
2.提高MultipartResolverFilter的执行顺序

至此大坑已解!用StandardServletMultipartResolver保平安,配置也记得迁移下

标签:HiddenHttpMethodFilter,SpringBoot,接口,CommonsMultipartResolver,file,present
From: https://www.cnblogs.com/danzZ/p/18141090

相关文章

  • 第十六章——处理锁、阻塞和死锁(3)——使用SQLServer Profiler侦测死锁
    前言:作为DBA,可能经常会遇到有同事或者客户反映经常发生死锁,影响了系统的使用。此时,你需要尽快侦测和处理这类问题。死锁是当两个或者以上的事务互相阻塞引起的。在这种情况下两个事务会无限期地等待对方释放资源以便操作。下面是死锁的示意图: 本文将使用SQLServerProfi......
  • Spring API DOC未授权访问/SpringBoot Actuator 未授权访问测试方法
    插件安装需要先安装并配置java环境,然后在burpsuite中安装apikit插件 工具扫描1)在BurpSuite中抓取请求:你将在BurpSuite中的`Proxy`标签的`HTTPhistory`中看到所有通过代理发送的请求。2)使用APIkit进行测试:在BurpSuite中,发送想要测试的请求选择**DoAutoAPIscan**来发......
  • springboot集成spark大数据
    1、特别申明,请注意JDK版本,最好用JDK1.8,用JDK17会导致很多报错2、导入pom依赖JDK1.8直接导入spark依赖就行。<dependency><groupId>org.apache.spark</groupId><artifactId>spark-sql_2.13</artifactId><version>3.4.1......
  • springboot多模块项目启动经历
    springboot多模块使用@目录springboot多模块使用前言大佬把项目权限给我了,我就先下下来看看学习一下一、识别二、maven配置1.安装maven三、加载刷新总结前言大佬把项目权限给我了,我就先下下来看看学习一下一、识别项目分为母模块和多个子模块,开始idea只是识别了最外层的pom......
  • 基于SpringWeb MultipartFile文件上传、下载功能
    在Web开发中,文件上传是一个常见的功能需求。Spring框架提供了MultipartFile接口,用于处理文件上传请求。MultipartFile可以代表一个多部分文件上传请求中的一个文件,提供了一系列方法用于获取文件的各种属性和内容,使得在后端处理文件上传变得十分方便。下面我们将介绍MultipartFile......
  • Python——cProfile(程序分析)
    程序分析可以系统性地分析程序的运行速度、内存使用情况等。cProfile是Python的分析器,用于测量程序的运行时间和程序内各个函数调用消耗的时间。importcProfiledefadd():total=0foriinrange(1,10000001):total+=icProfile.run('add()')'''......
  • 解决IDA Pro Warning:mssdk64_win7: No such file or directory
       最初我以为出现这个问题的原因是我本机没有安装Windows7sdk导致的,然后尝试安装了windows7sdk。发现并没有什么用。接着机缘巧合之下发现这里的mssdk64_win7并不是指windowssdk,而是指idapro使用的til文件。所以idapro报这个错误只是因为安装目录下缺失了这些文件,所以......
  • 31.SpringBoot项目_员工管理系统总结 下
    本来想好好整理最后结束的奈何又接了个项目一个挺大的项目更能运用所以时间不够就简单整理算烂了个尾吧首先:1.人工AI取代程序员对我来说是不对的确实是骗外行的但其确实强大带来的便利但也只有程序员才能完美部署并运用它2.有多少人像我一样不喜欢wordexcelppt喜......
  • springboot简单正确的使用构造函数注入
    一个一个写构造函数太麻烦了,而且代码会显得非常多,这里我们可以采用lombok快捷注入但是我们并不是所有的成员变量都需要进行注入,所以使用@RequiredArgsConstrucotr需要构造函数的部分添加上final关键字"Alwaysuseconstructorbaseddependencyinjectioninyourbeans.Alwa......
  • SpringBoot 事务失效常见的原因
    low一点的原因:1.非public方法2.异常被处理了(trycatch)3.bean没被Spring管理,比如没加Component注解4.数据库不支持(比如MyISAM) 高大上一点的原因:5.内部方法调用,可以注入本实例的代理类,通过代理类来调用6.抛出的是非RuntimeException,可以这么解决(@Transactional(rollb......