restTemplate调用模块进行文件下载:

调用的方法是void方法,所以需要用restTemplate.exchange方法进行调用


调用过程:

     被调用的目标接口:@GetMapping(value = "/fileDownload/{Id}")public void fileDownload(@PathVariable String Id)
// 创建 RestTemplate RestTemplate restTemplate = new RestTemplate();HttpHeaders headers = new HttpHeaders();// 调用下载接口进行下载// id 为String类型,为被调用接口参数ResponseEntity<byte[]> entity = restTemplate.exchange("被调用地址的url" + "/fileDownload/"+Id, HttpMethod.GET,new HttpEntity<>(headers), byte[].class);// 返回数据,在下面写到输出流里面byte[] body = entity.getBody();try {// 这三行是对文件名编码,与内容编码,可以不写fileName = FileNameUtils.fileNameEncoding(request, fileName);response.setContentType("application/x-msdownload");response.addHeader("Content-Disposition", "attachment; " + fileName);// 把boby数据写入输出流输出response.getOutputStream().write(body);} catch (IOException e) {log.error("下载失败",e);}

总结:

 主要是restTemplate调用接口的时候一直报错,试了几种方法,这个成功解决了问题,所以记录下,要是有更好的方法可以评论说一下,一起多了解了解

java restTemplate请求get接口下载文件相关推荐

  1. 使用restTemplate请求get接口下载文件

    引入的是这个包 import org.springframework.web.client.RestTemplate; // 通过接口,下载附件,转换成byte数组:然后再把这些字节流传递给XX系统的 ...

  2. Vue项目:js模拟点击a标签下载文件并重命名,URL文件地址下载方法、请求接口下载文件方法总结。

    URL文件地址下载方法 一.正常情况下,我们都如此下载文件并修改文件名,在a标签上面添加download属性 //文件下载downFile() {if ('download' in document. ...

  3. 2021-09-07-OSB学习(接口下载文件--流)

    OSB学习(接口下载文件[流的形式]) 什么是使用流文件传输 1.我们要干什么 2.接口开发 2.1.控制台通过执行PL显示流文件信息 2.1.1.创建基本的目录结构 2.1.2.打开项目,然后创建B ...

  4. 【java从网络外链接下载文件并回传到其他网络服务器】

    java从网络外链接下载文件并回传到其他网络服务器 场景 描述 举例 解决方案 准备 例子 说明,如果是springboot项目 测试 其他更细粒度实现的文件上传至远程(网络)服务器例子 场景 描述 ...

  5. java调用企业微信接口发送文件功能

    java调用企业微信接口发送文件功能 代码 结合几位大佬的代码后实现此功能:感谢大佬让我完成此功能的实现,如有侵权,立刻删除. 借鉴文章地址: java调用企业微信接口发送消息https://blog ...

  6. 使用RestTemplate请求第三方接口出错,没抛出异常?

    RestTemplate请求第三方接口的时候,请求失败或者没有成功,没有抛异常出来,自己在catch中打印的日志也看不到.下面直接看代码吧,直接拿去可以用的.抛异常的时候可以换一种异常试试,比如Res ...

  7. java设置ContentType,设置下载文件名称

    java设置ContentType,设置下载文件名称 根据上传文件名设置ContentType 设置下载文件名称 根据上传文件名设置ContentType 几种常用上传文件如下: private St ...

  8. java ftp 假死_FTPClient下载文件,程序假死问题

    [所属类包] org.apache.commons.net.ftp.FTPClient [现象描述] 这两天java项目中用到了FTP下载,像之前的项目写好代码,但是点击下载后,程序调试到下面这一行, ...

  9. java ftp 假死_FTPClient下载文件程序假死问题

    FTPClient下载文件程序假死问题 FTPClient下载文件,程序假死问题 [所属类包] org.apache.commons.net.ftp.FTPClient [现象描述] 这两天java项 ...

最新文章

  1. 【c语言】蓝桥杯算法提高 输入输出格式练习
  2. selenium 获取href find_element_by_xpath
  3. 调用iOS系统本地相册或摄像头
  4. 计算机校本培训心得,个人校本培训心得体会3篇
  5. Loopback測试软件AX1用户手冊 V3.1
  6. QScrollArea滚动条
  7. package报错情况下如何修改
  8. ajax中设置请求头和自定义请求头
  9. LNMP编译安装(centos7+nginx1.9+mysql5.6+php5.5)
  10. 英伟达显卡不同架构_求历代英伟达显卡架构名称
  11. Windows10系统教育版和专业版区别在哪里?
  12. 杂谈:加班中离世的人
  13. 精选大数据面试真题10道(附答案详细解析)
  14. xp怎么让计算机开启ftp,Win7和WinXP共享打印机和FTP怎么设置
  15. 线圆示例(Line Circle)
  16. 如何鉴别交换机的优劣好坏?您可以从这十方面去评判!
  17. windows 睡眠倒计时_如何在手机上设置音乐睡眠计时器
  18. ChatGLM-6B【完全转载】
  19. 基于Xposed框架截取安卓手机应用数据信息
  20. 理论+实操:K8S搭建dns内部服务与控制器controlls五种模式

热门文章

  1. wireshark安装及使用总结 winpcap
  2. 微机计算机系统结构原理,计算机系统组成及工作原理题目
  3. 风变编程python入门经典100题_风变编程《Python基础语法+爬虫精进》
  4. Telegram学习解析系列(一):认识一下Telegram的源码
  5. Get http://localhost:10248/healthz: dial tcp 127.0.0.1:10248: connect: connection refused.
  6. 淘客基地公众号系统更新至v1.2.3版本
  7. 简体转繁体镜像克隆站群-自动缓存-自动伪静态
  8. Python 智能银行卡识别系统的实现
  9. JavaScript fontsize() 方法
  10. 阿里小号平台淘宝钻号=www.alibaizhan.com