Postman - 所需的 MultipartFile 参数不存在 - Spring,Java

Postman - Required MultipartFile parameter is not present - Spring, Java(Postman - 所需的 MultipartFile 参数不存在 - Spring,Java)

本文介绍了Postman - 所需的 MultipartFile 参数不存在 - Spring,Java的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Edit

This question is different from: jQuery Ajax file upload : Required MultipartFile parameter 'file' is not present The difference is that they use jQuery and Ajax, while I use a REST client - 'Postman'

So instead of setting Content-Type to false, I had to remove it altogether.

Also, when searching for answers about 'Postman', I believe people will skip questions that have the words jQuery and Ajax in them, this is what happened to me

End Edit

I'm using Spring MVC web application on Java8 and running it on tomcat7.x. Spring version is: 4.2.6.RELEASE and javax servlet version is: 3.0.1

context.xml

...

<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    <!-- max upload size in bytes -->
    <property name="maxUploadSize" value="5242880" /> <!-- 5MB -->

    <!-- max size of file in memory (in bytes) -->
    <property name="maxInMemorySize" value="1048576" /> <!-- 1MB -->

</bean>

...

controller.java

...
@RequestMapping(method = RequestMethod.POST, consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
@ResponseStatus(value = HttpStatus.CREATED)
public void importTranslations(@RequestParam (name = "myfile") MultipartFile myfile) {
    myService.doSomething(myfile);
}
...

Here is the issue

I use Postman to send a *.zip file. The path is correct and everything looks good, but spring throws an exception: "Required MultipartFile parameter 'myfile' is not present"

Here is the screenshot from Postman: So the file is there and the key name is correct. Everything seems OK, and yet, I get the error

解决方案

After a lot of searching here in stackoverflow, I found this question: jQuery Ajax file upload : Required MultipartFile parameter 'file' is not present

I tried setting the Content-Type header in Postman to false and got an error. When I removed the Content-Type header, it worked!!

Hope this helps someone

这篇关于Postman - 所需的 MultipartFile 参数不存在 - Spring,Java的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:Postman - 所需的 MultipartFile 参数不存在 - Spring,Java