У меня есть две конечные точки. Одна конечная точка будет получать файлы от Postman и должна направлять те же файлы в другую конечную точку, используя RestTemplate
.
2-ая конечная точка вызывается, но нет файлов.
конечная точка 1:
@PostMapping("/upload/test")
public String testUpload(@RequestParam("files") List<MultipartFile> files) throws IOException{
if (files.isEmpty()) {
return "Please select a file . . .";
}
System.out.println("**** Number of files : "+files.size());
MultiValueMap<String, Object> map = new LinkedMultiValueMap<>();
List<Object> f = new ArrayList<>();
for(MultipartFile file : files) {
f.add(new ByteArrayResource(file.getBytes()));
}
map.put("files", f);
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.MULTIPART_FORM_DATA);
HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(map, headers);
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<String> response = restTemplate.exchange("http://localhost:8085/upload/test/client",
HttpMethod.POST, requestEntity, String.class);
System.out.println("response status: " + response.getStatusCode());
System.out.println("response body: " + response.getBody());
return "success";
}
конечная точка 2:
@PostMapping("/upload/test/client")
public String testClient(@RequestParam("files") List<MultipartFile> files){
System.out.println("********inside client *****************");
System.out.println(files);
return "200";
}
O / P:
**** Number of files : 2
********inside client *****************
[]
response status: 200 OK
response body: 200