后端实现页面下载文件、图片、音频等

1:前言

这个是偷过来的哈,不是原创
主要是自己玩的项目时发现的,然后记录下,万一哪天有用呢。

分享一下 contenttype类型对照表(不同文件对应不同类型,这个应该要前端在request中将这个参数传到后台)
https://tool.oschina.net/commons

2:将文件返回给前端

   @GetMapping("getFile")
    public void getFile(HttpServletRequest request, HttpServletResponse response) throws Exception {
//        String filePath = "E:/1.IDEA/Workspace/helloFile/龙涛寸照_蓝底.jpg";
        String filePath = "E:/1.IDEA/Workspace/helloFile/龙涛-员工信息表-.xlsx";
        File f = new File(filePath);
        FileInputStream inputStream = new FileInputStream(f);
        int i = inputStream.available();
        //byte数组用于存放图片字节数据
        byte[] buff = new byte[i];
        inputStream.read(buff);
        //记得关闭输入流
        inputStream.close();
        //设置发送到客户端的响应内容类型
//        response.setContentType("audio/wav");  //wav 录音文件
//        response.setContentType("image/jpeg");  //图片录音文件
        response.setContentType("application/vnd.ms-excel");
        OutputStream out = response.getOutputStream();
        out.write(buff);
        //关闭响应输出流
        out.close();
    }

3:在浏览器看执行结果

在这里插入图片描述

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐