【发布时间】:2019-07-02 11:08:52
【问题描述】:
在我的控制器中,我有这个接收数据的方法
@RequestMapping(path = "/takemyvid", method = RequestMethod.POST)
public String upload2(@RequestParam("summary") String summary, @RequestPart("file") MultipartFile file) {
System.out.println(file);
System.out.println(summary);
return "";
}
但是当我用正确的参数用邮递员测试它时,我得到一个错误
Resolved [org.springframework.web.bind.MissingServletRequestParameterException: Required String parameter 'summary' is not present]
即使我只包含文件也会发生这种情况。
我已经在属性文件中设置了最大文件大小。
spring.servlet.multipart.max-file-size=128MB
spring.servlet.multipart.max-request-size=128MB
使用 Spring Boot 版本 2.1.2.RELEASE。
【问题讨论】:
-
这仅适用于一个字符串参数,请问您能用我的例子给我看吗?
-
请同时发布您的请求标头(在邮递员中设置)。它们将影响 Spring 如何处理/转换请求参数/正文。见Postman - Required MultipartFile parameter is not present - Spring, Java
-
你试过我的解决方案了吗?它起作用了吗? @IsaacK
-
@Pijotrek,感谢您的回答,但属性为空,因此记录器行抛出空指针异常。
-
您是否使用 getter 和 setter 创建了 Dto 类?您确定字段名称与您在 Postman 中发送的名称相同吗?我尝试了我的解决方案,效果很好
标签: spring spring-boot file-upload multipartform-data