Spring Rest with Spring Boot:上传 MultipartFile 和 Json 对象作为参数

Gab*_*iel 1 java rest spring spring-boot

我知道这个问题之前曾在 stackoverflow 上被问过。但是,我还没有找到使用 Postman 等实际测试服务的答案。

我遵循了文档,我的服务与文档中描述的几乎相同:

@PostMapping("/someUrl")
public ResponseEntity<Void> uploadFile(@RequestPart(name="foo", required = false) Foo foo, @RequestPart("file") MultipartFile file) {
    return new ResponseEntity<>(OK);
}
Run Code Online (Sandbox Code Playgroud)

当我尝试使用 Postman 加热我的服务时,出现以下错误:

org.springframework.web.multipart.MultipartException:当前请求不是多部分请求

在邮递员那里,我得到了以下回报

邮差

问题是:是否可以使用 Postman 调用我的服务?如果是,我缺少哪些参数?

Sas*_*asa 5

是的,可以使用 Postman 调用您的服务。

不要将 JSON 作为文本发送,而是创建一个包含要发送的 JSON 数据的文件(例如test.json):

{
    "teste": "abc"
}
Run Code Online (Sandbox Code Playgroud)

然后在表单数据部分将foo字段类型从文本更改为文件并选择您创建的 JSON 文件。

就是这样。单击“发送”,您的请求应该会得到处理而不会出现任何错误。

注意:标题应该留空,即它不应该包含任何自定义的 Content-Type 值。