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

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)

}

})

}

})

}

}

});

},

相关推荐
某公司摸鱼前端4 小时前
uniapp socket 封装 (可拿去直接用)
前端·javascript·websocket·uni-app
要加油哦~4 小时前
vue | 插件 | 移动文件的插件 —— move-file-cli 插件 的安装与使用
前端·javascript·vue.js
wen's6 小时前
React Native 0.79.4 中 [RCTView setColor:] 崩溃问题完整解决方案
javascript·react native·react.js
vvilkim6 小时前
Electron 自动更新机制详解:实现无缝应用升级
前端·javascript·electron
vvilkim6 小时前
Electron 应用中的内容安全策略 (CSP) 全面指南
前端·javascript·electron
aha-凯心6 小时前
vben 之 axios 封装
前端·javascript·学习
漫谈网络6 小时前
WebSocket 在前后端的完整使用流程
javascript·python·websocket
失落的多巴胺8 小时前
使用deepseek制作“喝什么奶茶”随机抽签小网页
javascript·css·css3·html5
DataGear8 小时前
如何在DataGear 5.4.1 中快速制作SQL服务端分页的数据表格看板
javascript·数据库·sql·信息可视化·数据分析·echarts·数据可视化
影子信息8 小时前
vue 前端动态导入文件 import.meta.glob
前端·javascript·vue.js