Возникла уникальная потребность, когда мне нужно загрузить поток файлов из одного источника через HTTP, а затем загрузить этот поток файлов в другой сервис через HTTP.
Хотя это легко выполнимо
- Загрузка файла с сервера A
- Хранить локально (временно) на сервере приложений, который сделал запрос на загрузку
- Затем загрузите файл как документ с несколькими деталями на сервер B
Однако я стараюсь избегать шага 2.
Итак, мой вопрос: возможно ли направить поток из загрузки с шага 1 в загрузку на потоке 2? Я не могу загрузить сервер A напрямую на сервер B.
В следующем примере он использует FileSystemResource, но мне нужно передать его как поток - поток, который я получу из загрузки.
HttpHeaders headers = crateHeaders();
headers.setContentType(MediaType.MULTIPART_FORM_DATA);MultiValueMap<String, Object> parameters = new LinkedMultiValueMap<>();
parameters.add("metadata", jsonObject);
parameters.add("content", new FileSystemResource(fileToUpload));
HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(parameters, headers);