Java使用RestTemplate发送文件

/**
 * 发送数据到云端接口
 *  @param filename     文件名
 */
public void sendDataToCloudApi(String filepath) {
    FileSystemResource fileSystemResource = new FileSystemResource(new File(filepath));
    // headers参数
    HttpHeaders requestHeaders = new HttpHeaders();
    // body体参数
    MultiValueMap<String, Object> requestBody = new LinkedMultiValueMap<>();
    // 设置header是文件上传
    requestHeaders.setContentType(MediaType.MULTIPART_FORM_DATA);
    // 参数设置文件
    requestBody.add("file", fileSystemResource);
    // 封装所有参数
    HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(requestBody, requestHeaders);
    // 创建RestTemplate
    RestTemplate restTemplate = new RestTemplate();
    // 发起请求
    JSONObject body = restTemplate.exchange("http://192.168.10.221:8301/nag/equipEvent/push/event", HttpMethod.POST,requestEntity, JSONObject.class).getBody();
    requestBody.clear();
    requestHeaders.clear();
}
posted @   老卫同学  阅读(933)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示
主题色彩