我试图使用spring restTemplate将MultipartFile列表发布到我的RestController,尽管我对我的客户端和控制器使用的确切语法和类型有点困惑.基于我所做的研究,到目前为止我所拥有的......
FileUploadClient.java
public void uploadFiles(List<MultipartFile> multiPartFileList) throws IOException {
MultiValueMap<String, Object> map = new LinkedMultiValueMap<>();
List<Object> files = new ArrayList<>();
for(MultipartFile file : multiPartFileList) {
files.add(new ByteArrayResource(file.getBytes()));
}
map.put("files", files);
// headers is inherited from BaseClient
headers.setContentType(MediaType.MULTIPART_FORM_DATA);
HttpEntity<MultiValueMap<String, Object>> request = new HttpEntity<>(map, headers);
ResponseEntity<String> response = restTemplate.exchange(restURI + "/rest/fileupload/uploadfiles", HttpMethod.POST, request, String.class);
if(HttpStatus.OK.equals(response.getStatusCode())) {
System.out.println("status for /rest/fileupload/uploadfiles ---> " + response);
}
}
Run Code Online (Sandbox Code Playgroud)
FileUploadRestController.java
@RequestMapping(value = "/uploadfiles", method = RequestMethod.POST)
public ResponseEntity<?> uploadFiles(@RequestParam("files") List<MultipartFile> files, HttpServletRequest request) { …Run Code Online (Sandbox Code Playgroud)