SpringCloud 通过Feign 调用其他服务下载文件
2018-09-04 17:24
597 查看
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/nanqu2090/article/details/82387000
SpringCloud 微服务中 通过Feign 调用文件下载接口 下载文件 不能使用 HttpServletResponse 接受文件流.
1. 使用 feign.Response, 调用完远程接口后,再获取处理返回的文件流
2. 使用ResponseEntity<byte[]> 来传送文件流
a. 远程文件下载接口
[code] ResponseEntity<byte[]> entity = null; HttpHeaders headers = new HttpHeaders(); //读取文件字节数组 byte[] res = testService.testMethod(...param); headers.add("Content-Type", "application/octet-stream"); headers.add("Connection", "close"); headers.add("Accept-Ranges", "bytes"); headers.add("Content-Disposition", "attachment;filename=" + new String(file_name.getBytes("GB2312"), "ISO8859-1")); ...一些业务操作 //将文件字节数组,header,状态码封装到ResponseEntity entity = new ResponseEntity<byte[]>(res, headers, HttpStatus.OK); return entity
b. 服务调用方直接返回
[code] @GetMapping("/download/file") public ResponseEntity<byte[]> downloadExcelFiles( ... some params){ return 直接调用远程下载方法; }
阅读更多
相关文章推荐
- spring cloud feign实现远程调用服务传输文件的方法
- Spring boot + Spring Cloud框架下通过Feign进行跨服务传递文件
- springcloud使用feign实现服务间条用,参数数据太大,无法调用成功解决方法
- 【微服务】之五:轻松搞定SpringCloud微服务-调用远程组件Feign
- 【Spring Cloud】--声明式服务调用Feign
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
- SpringCloud之声明式服务调用Spring Cloud Feign实例
- spring cloud Feign(声明式服务调用)
- Spring Cloud中声明式服务调用Feign
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
- 关于Dalston.SR3版本的spring cloud,用feign客户端调用服务hystrix不能生效的问题
- 2、springcloud微服务:基于Feign的服务调用
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务
- 通过springcloud-gateway调用后台服务超时的问题
- Spring Cloud 入门教程(六): 用声明式REST客户端Feign调用远端HTTP服务
- Spring Cloud Feign 声明式服务调用
- spring cloud eureka服务调用出现feign.codec.EncodeException: Could not write request: no suitable HttpMessa
- SpringCloud微服务调用方式之Ribbon和Feign方式
- 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务的方法(推荐)