uniapp h5文件流下载pdf文件

今天遇到一个需求就是后端返回一个文件流,前端需要用户点击以后下载,那么怎么去做呢 请看下面代码

javascript 复制代码
 DownLoadDoc() {
      let url = 'doc/api/downloadDocFulltext?id=' + this.id //接口路径
      uni.request({
        url:uni.getStorageSync('baseUrl')+url, //域名拼接
        responseType: 'arraybuffer', //这里记得设置响应数据格式,不然预览的pdf是空白
        header: {
          "GAKey": uni.getStorageSync('token') // 携带的token
        },
        success: (response) => {
          let pdfData = response.data; //pdfData是后端返回的文件流										//创建blob数据流,并用a标签来下载
		  let blob = new Blob([ pdfData], {
              type: 'application/pdf;charset=UTF-8'
          })
          var a = document.createElement('a');
          document.body.appendChild(a);
          a.style = 'display: none';
          var url = window.URL.createObjectURL(blob);
          a.href = url;
          a.download = `${this.title}.pdf`; // 文件标题
          a.click();
          a.remove();
          window.URL.revokeObjectURL(url);  
        }
      })
    }
相关推荐
2501_9462139012 分钟前
Zettlr(科研笔记) v4.0.0 中文免费版
java·经验分享·笔记·pdf·github·ocr·开源软件
玄尺_00719 分钟前
uniapp h5端使浏览器弹出下载框
前端·javascript·uni-app
2501_915106321 小时前
iOS 抓包工具有哪些?不同类型的抓包工具可以做什么
android·ios·小程序·https·uni-app·iphone·webview
java_logo1 小时前
MinerU Docker 部署指南:PDF 结构化解析服务实践
docker·容器·pdf·mineru·mineru部署·mineru部署文档·mineru部署教程
web前端神器11 小时前
vue、uniapp项目循环中能显示每个列表的内容,但是点击的时候传递的参数却不正确
uni-app
ModyQyW11 小时前
HBuilderX 4.87 无法正常读取 macOS 环境配置的解决方案
前端·uni-app
脾气有点小暴12 小时前
Uni-app App 端自定义导航栏完整实现指南
uni-app
CDwenhuohuo18 小时前
uniapp去掉手机状态栏 全屏展示
开发语言·javascript·uni-app
行走的陀螺仪21 小时前
使用uniapp,实现根据时间倒计时执行进度条变化
前端·javascript·uni-app·vue2·h5
Hzsilvana21 小时前
踩坑日记:Uniapp项目定位偏差与依赖更新的真相
uni-app