Spring Cloud Feign接口返回流的实现
服务提供者
@GetMapping("/{id}") publicvoidqueryJobInfoLogDetail(@PathVariable("id")Longid,HttpServletResponseresponse){ Filefile=newFile("xxxxx"); InputStreamfileInputStream=newFileInputStream(file); OutputStreamoutStream; try{ outStream=response.getOutputStream(); byte[]bytes=newbyte[1024]; intlen=0; while((len=fileInputStream.read(bytes))!=-1){ outStream.write(bytes,0,len); } fileInputStream.close(); outStream.close(); outStream.flush(); }catch(IOExceptione){ log.error("exception",e); } }
client客户端
@GetMapping(value="/{id}",consumes=MediaType.APPLICATION_JSON_UTF8_VALUE) feign.ResponsequeryJobInfoLogDetail(@PathVariable("id")Longid);
服务消费者
@GetMapping("/{id}") publicvoidqueryJobInfoLogInfoList(@PathVariable("id")Longid,HttpServletResponseservletResponse){ Responseresponse=apiServices.queryJobInfoLogDetail(id); Response.Bodybody=response.body(); InputStreamfileInputStream=null; OutputStreamoutStream; try{ fileInputStream=body.asInputStream(); outStream=servletResponse.getOutputStream(); byte[]bytes=newbyte[1024]; intlen=0; while((len=fileInputStream.read(bytes))!=-1){ outStream.write(bytes,0,len); } fileInputStream.close(); outStream.close(); outStream.flush(); }catch(Exceptione){ } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。