微信小程序,下载流文件并打开预览

gopdf(e){

let that=this;

let pdfurl=e.currentTarget.dataset.pdfurl;

let file;

let tokenresult = wx.getStorageSync("tokenresult");

console.log(pdfurl);

wx.request({

url:app.globalData.api.fileurl + `api/file/pdf/httppreview?httpfile=${pdfurl}`,

method: "GET",

header: {

"Authorization": tokenresult.token_type + " " + tokenresult.access_token

},

responseType: 'arraybuffer', //此处是请求文件流,必须带入的属性

success: res => {

if (res.statusCode === 200) {

const fs = wx.getFileSystemManager(); //获取全局唯一的文件管理器

fs.writeFile({

filePath: wx.env.USER_DATA_PATH + "/在线文档.pdf", // wx.env.USER_DATA_PATH 指定临时文件存入的路径,后面字符串自定义

data: res.data,

encoding: "binary", //二进制流文件必须是 binary

success (res){

wx.openDocument({ // 打开文档

filePath: wx.env.USER_DATA_PATH + "/在线文档.pdf", //拿上面存入的文件路径

showMenu: true, // 显示右上角菜单

success: function (res) {

setTimeout(()=>{wx.hideLoading()},500)

}

})

}

})

}

}

});

},

相关推荐
To_OC7 分钟前
从一段定时器代码,重新捋清 JS 同步、异步与 Promise
前端·javascript·代码规范
拙慕JULY29 分钟前
小程序返回 base64 文件报错
开发语言·javascript·小程序
数据知道31 分钟前
字体与排版防线:ClientRects 与系统字体枚举的底层拦截与伪造
javascript·数据采集·指纹浏览器·风控·浏览器指纹
一壶纱1 小时前
一个用于 UniApp 项目的 Pinia 持久化插件
前端·javascript·vue.js
凌涘1 小时前
JS 八大基本类型:一场内存视角的冒险之旅
前端·javascript
数据知道1 小时前
视觉伪装(上):Canvas 指纹生成原理与 Skia 图形库底层注入噪声
开发语言·javascript·ecmascript·数据采集·指纹浏览器
文阿花1 小时前
Echarts实现自定旋转3D饼状图
javascript·3d·echarts·饼状图
拙慕JULY2 小时前
微信小程序自定义标题背景色
微信小程序·小程序
meilindehuzi_a2 小时前
深入理解 JavaScript 的同步与异步机制:从单线程设计到 Promise 核心应用
开发语言·javascript·ecmascript
如烟花的信页2 小时前
加速乐cookie逆向分析
javascript·爬虫·python·js逆向