Roh*_*rma 5 java spring file-upload swagger spring-boot
我正在尝试将文件从 Spring Boot 应用程序上传到 Amazon s3。
当我使用 POSTMAN 上传文件时,文件已成功上传到 s3。但是,当我尝试从 swagger 上传文件时,它会以 200 的状态代码响应,但没有上传文件,并且在我的 Spring Boot 应用程序中,它会引发空指针异常。
这是 CORS 问题吗(我什至尝试在 Spring Boot 配置中启用 CORS)?或者我做错了什么,比如需要在我的招摇中添加配置或其他什么?
这是控制器代码 -
@PostMapping(value = "/uploadFile" )
public JSONObject uploadFile(MultipartFile[] file) {
return this.amazonClient.uploadFile(file);
}
Run Code Online (Sandbox Code Playgroud)
这是工作正常的邮递员请求 -
这是不起作用的招摇请求 -
编辑:
在对Controller方法进行如下更改后:
@RequestMapping(value = "/uploadFile",method = RequestMethod.POST, consumes = { "multipart/form-data" })
//@PostMapping(value = "/uploadFile" ) // consumes = MediaType.MULTIPART_FORM_DATA_VALUE
public JSONObject uploadFile(@RequestPart("file") MultipartFile[] file) {
return this.amazonClient.uploadFile(file);
}
Run Code Online (Sandbox Code Playgroud)
我现在收到以下 curl 请求Swagger:
curl -X POST "http://localhost:8080/storage/uploadFile" -H "accept: */*" -H "Content-Type: multipart/form-data" -F "file={}"
Run Code Online (Sandbox Code Playgroud)
您可以清楚地看到file参数变为空。有什么想法吗?
| 归档时间: |
|
| 查看次数: |
1633 次 |
| 最近记录: |