当前位置: 首页 > news >正文

前端预览、下载二进制文件流(png、pdf)

前端请求设置 responseType: “blob”

后台接口返回的文件流如下:
在这里插入图片描述
在这里插入图片描述

拿到后端返回的文件流后:
预览

<iframe  :src="previewUrl" frameborder="0" style="width: 500px; height: 500px;"></iframe>

1、预览

view(data) {// 文件类型            let fileType = this.fileName.slice(this.fileName.length - 3).toUpperCase();let myBlob = '';//不同文件类型设置不同的type            if (fileType == 'PDF') {myBlob = new window.Blob([data], { type: 'application/pdf' });} else {myBlob = new window.Blob([data], { type: 'image/png' });}const previewUrl = window.URL.createObjectURL(myBlob);this.previewUrl = previewUrl;// iframe预览// window.open(previewUrl, '_blank');// 浏览器新打开窗口        
},

2、下载

// 下载        
downFile() {var data = this.fileData;var fileType = this.fileName.slice(this.fileName.length - 3).toUpperCase();var blob = "";if (fileType == 'PDF') {blob = new window.Blob([data], { type: 'application/pdf' });} else if (fileType == 'PNG') {blob = new window.Blob([data], { type: 'image/png' });}const a = document.createElement("a");const objectUrl = URL.createObjectURL(blob);a.setAttribute("href", objectUrl);a.setAttribute("download", this.fileName);a.click();URL.revokeObjectURL(a.href); // 释放url        
}
http://www.lryc.cn/news/190609.html

相关文章:

  • 搞定ESD(三):ESD干扰耦合路径深入分析(一)
  • 广州华锐互动:炼钢工厂VR仿真实训系统
  • 适用于音视频的弱网测试整理
  • 【Spring MVC研究】DispatcherServlet如何处理请求(doDispatcher方法)
  • 解决github加载过慢问题
  • 利用python批量处理nc数据
  • popen() 获取 ping 命令结果解析
  • 【pytorch】深度学习准备:基本配置
  • etcd随笔
  • 0基础学习VR全景平台篇 第107篇:全景图调色和细节处理(上,地拍)
  • Verilog功能模块——同步FIFO
  • Unity ToLua热更框架使用教程(1)
  • 车载相关名词--车载数据中心方案
  • helm使用
  • Python in Visual Studio Code 2023年10月发布
  • Webmin远程命令执行漏洞复现报告
  • webstorm自定义文件模板(Vue + Scss)
  • 楔子-写在之前
  • 第 5 章 数组和广义表(稀疏矩阵的三元组顺序表存储实现)
  • 【RabbitMQ 实战】11 队列的结构和惰性队列
  • Python3-批量重命名指定目录中的一组文件,更改其扩展名
  • 渗透测试KAILI系统的安装环境(第八课)
  • 如何正确方便的理解双指针?力扣102 (二叉树的层序遍历)
  • Vue或uniapp引入自定义字体
  • ​力扣:LCR 122. 路径加密​ 题目:剑指Offer 05.替换空格(c++)
  • cJson堆内存释放问题
  • 论文阅读/写作扫盲
  • 一文拿捏对象内存布局及JMM(JAVA内存模型)
  • Android组件通信——ActivityGroup(二十五)
  • js的继承的方式