java - Java Spring管道远程文件成分段上传
问题描述
我在位置 X 有一个图像。我想将它复制到接受表单数据的位置 Y。我不想将文件下载到服务器上的临时文件中,而是通过管道传输。我当前的设置使用临时文件。
public Asset pipeToY(File tempFileFromX) {
Resource resource = new FileSystemResource(tempFileFromX.getPath());
LinkedMultiValueMap<String, Object> map = new LinkedMultiValueMap<>();
map.add("file", resource);
// map.add("otherInfos");
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.MULTIPART_FORM_DATA);
headers.set("Authorization", "Bearer " + myTokenForY);
HttpEntity<LinkedMultiValueMap<String, Object>> requestEntity = new HttpEntity<>(
map, headers);
try {
ResponseEntity<Object> result = restTemplate.exchange(locationY, HttpMethod.POST, requestEntity,
Object.class);
HashMap<String, String> resultMap = (HashMap<String, String>) result.getBody();
return convert(resultMap);
} catch (Exception e) {
// ...
}
}
如何用管道流替换该部分?
public Asset pipeToY(String urlX) {
Resource resource = new InputStreamResource(???)
}
解决方案
推荐阅读
- c# - 将 int 拆分为具有最大值的块
- java - 线程“Thread-6”kotlin.UninitializedPropertyAccessException 中的异常:lateinit 属性尚未初始化
- javascript - 如何使用 JavaScript 的 XMLHttpRequest 更快/同时加载资源?
- django - 如何从 Django 中的模板标签访问静态文件以读取文本文件?
- angular - Angular 9 - 渲染有限数量的组件的孩子
- python - 在pyqt5中使用 PlotWidget.plot() 后如何清除数据?
- python - 用python解码邮件
- javascript - 剪刀石头布逻辑不会给出“TIE!” 即使用户输入是摇滚而计算机输入是摇滚
- kframework - K中的结构操作语义?
- c++ - 返回 float 导致返回 int