zoukankan      html  css  js  c++  java
  • SpringCloud Feign请求流文件

    Provider

    服务提供方接口返回流文件

     Consumer

    消费者接受方式为fegn.Response,下载:

    public ModelAndView getChecklistTree(HttpServletResponse servletResponse) {
            ModelAndView mv = new ModelAndView();
            mv.setView(new DownloadView());
    
            Response response = violationService.download();
            Response.Body body = response.body();
            Map<String, Collection<String>> headers = response.headers();
            InputStream fileInputStream = null;
            try {
                fileInputStream = body.asInputStream();
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                IOUtils.closeQuietly(fileInputStream);
            }
            try {
                String filename = Optional.ofNullable(headers.get("filename11")).map(m -> m.stream().collect(Collectors.toList()).get(0))
                        .orElse(URLEncoder.encode("分红方案-每股股息.xlsx", "utf-8"));
                mv.addObject(DownloadView.EXPORT_FILE, fileInputStream);
                mv.addObject(DownloadView.EXPORT_FILE_NAME, filename);
                mv.addObject(DownloadView.EXPORT_FILE_TYPE, DownloadView.FILE_TYPE.XLSX);
                servletResponse.setHeader("fileName", filename);
            } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
            }
    
            return mv;
        }
  • 相关阅读:
    修改代码一般在测试服务器
    人很臭尽量往香里去做...
    救赎
    写的css十个错误
    如何debug看源代码
    办公室倒水
    程序和思维
    mousewheel.js 和scroll api
    drupal.behavior 和 document.ready 没有直接的关系
    revision in drupal
  • 原文地址:https://www.cnblogs.com/LiuFqiang/p/15792776.html
Copyright © 2011-2022 走看看