我遇到一种情况,我需要从s3存储桶中获取一个图像并调用一个api将文件发布为MultipartFile以保存在其他系统中。我能够完成第一部分(从s3获取文件)。我将文件作为S3Object。之后,我从s3Object获得ByteArrayOutputStream作为
long size = s3Object.getObjectMetadata().getContentLength();
ByteArrayOutputStream stream = new ByteArrayOutputStream((int) size);
IOUtils.copy(s3Object.getObjectContent(), stream);
现在,如何调用使用上述数据接受多部分/表单数据的服务?我在下面做了,显然没用。
HttpEntity<ByteArrayOutputStream> requestEntity = new HttpEntity<>(stream, headers);
response = restTemplate.exchange(url, HttpMethod.POST, requestEntity, String.class);
错误如下:
org.springframework.web.client.RestClientException: Could not write request: no suitable HttpMessageConverter found for request type [java.io.ByteArrayOutputStream] and content type [multipart/form-data]
at org.springframework.web.client.RestTemplate$HttpEntityRequestCallback.doWithRequest(RestTemplate.java:785) ~[spring-web-4.1.9.RELEASE.jar:4.1.9.RELEASE]