单个文件上传
@PostMapping("/upload")
public MyResponse<?> upload(MultipartFile file) {
if (multipartFiles == null || multipartFiles.length == 0) {
throw new MessageException("未选择文件");
}
InputStreamResource inputStreamResource = new InputStreamResource(file.getInputStream(), file.getOriginalFilename());
MultiResource multiResource = new MultiResource(inputStreamResource);
HttpResponse response = HttpRequest.post(url)
.form("file", multiResource)
.execute();
resultJson = response.body();
return MyResponse.success(multipartFiles.length);
}
多个文件上传
@PostMapping("/upload")
public MyResponse<?> upload(MultipartFile[] multipartFiles) {
if (multipartFiles == null || multipartFiles.length == 0) {
throw new MessageException("未选择文件");
}
MultiResource multiResource = new MultiResource(
Arrays.stream(multipartFiles)
.map(multipartFile -> {
try {
return new InputStreamResource(multipartFile.getInputStream(), multipartFile.getOriginalFilename());
} catch (IOException e) {
throw new MessageException("输入流打开失败", e);
}
}).collect(Collectors.toList())
);
HttpResponse httpResponse = HttpRequest.post("https://demo.shansing.net/api/uploadFiles")
//.timeout(myConfig.getLongTimeout())
.form("files", multiResource)
.execute();
return MyResponse.success(multipartFiles.length);
}
转自