我有两个 Spring Boot API,我首先将多部分文件从邮递员发送到一个 Spring Boot 应用程序,然后从那里发送到第二个 Spring Boot 应用程序,如下所示
邮递员(文件)-> API 1 -> API2
当文件从邮递员上传到 API1 时,一切都很顺利,但是当我将这个多部分文件从 API1 发送到 API2 时,一切都会崩溃。我正在使用 WebClient 将文件从 API1 发送到 API2。下面是相关代码以及我在两个 API 的控制台中看到的错误。
API1 中的代码,我使用 WebClient 使用预期文件调用 API2
public List<DTO> importPrograms(String urlPath, MultipartFile file){
try {
MultipartBodyBuilder builder = new MultipartBodyBuilder();
builder.part("file", file);
// also tried
//builder.part("file", new ByteArrayResource(file.getBytes()));
Flux<ProductVersionDTO> flux = webClient.post()
.uri(urlPath)
.contentType(MediaType.MULTIPART_FORM_DATA)
.header(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON.toString())
.accept(MediaType.APPLICATION_JSON)
.bodyValue(builder.build()) // also tried body(BodyInserters.fromMultipartData(builder.build()))
.retrieve()
.bodyToFlux(DTO.class);
return flux.collectList().block();
} catch(Exception e) {
LOG.error(e.getMessage());
return null; …Run Code Online (Sandbox Code Playgroud) webclient file-upload multipartform-data spring-boot multipartfile