[英]Spring Boot, upload any amount of files in REST controller
我想创建一个端点,它接受来自用户的任意数量的不同文件。
例如:
然后,我想在我的控制器中接收它作为Map<String, FilePart>
(或任何其他结构,我将知道哪个文件是哪个):
{
"file1": "cactus-logo.png",
"file2": "logo.png",
"file3": "logo.png" (this one is actually different than file2 but has the same name)
}
我尝试了@RequestPart
一些组合......
当我做:
@RequestPart Map<String, FilePart> files
或者
@RequestPart MultiValueMap<String, FilePart> files
我越来越:
org.springframework.web.server.ServerWebInputException: 400 BAD_REQUEST“所需的请求部分‘文件’不存在”
当我做:
@RequestPart("files") List<FilePart> files
我需要提交这样的文件:
然后我没有信息哪个文件是哪个(如果它们具有相同的名称):
最后,我可以这样做:
@RequestPart("file1") FilePart file1, @RequestPart("file2") FilePart file2, @RequestPart("file3") FilePart file3
然后它按预期工作,但是这样,可以始终只提交 3 个文件。 我想提交任意数量的文件。
正如评论中所建议的:
@PutMapping(value = "/{component}", consumes = MediaType.MULTIPART_FORM_DATA_VALUE) public void upload( @RequestParam Map<String, MultipartFile> files ) throws IOException {
并且地图始终为空:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.