欧美三级国产三级日韩三级_亚洲熟妇丰满大屁股熟妇_欧美亚洲成人一区二区三区_国产精品久久久久久模特

微信小程序—怎么在線預(yù)覽二進制流文件? - 新聞資訊 - 云南小程序開發(fā)|云南軟件開發(fā)|云南網(wǎng)站建設(shè)-昆明葵宇信息科技有限公司

159-8711-8523

云南網(wǎng)建設(shè)/小程序開發(fā)/軟件開發(fā)

知識

不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價值,我們在追求其視覺表現(xiàn)的同時,更側(cè)重于功能的便捷,營銷的便利,運營的高效,讓網(wǎng)站成為營銷工具,讓軟件能切實提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序為后期升級提供便捷的支持!

您當(dāng)前位置>首頁 » 新聞資訊 » 小程序相關(guān) >

微信小程序—怎么在線預(yù)覽二進制流文件?

發(fā)表時間:2020-10-15

發(fā)布人:葵宇科技

瀏覽次數(shù):288

一、關(guān)于微信小程序如何在線預(yù)覽,我的思路是兩部處理:

  1. 將后臺返回的二進制流,保存在本地臨時文件。
  2. 打開本地臨時文件。

二、后臺給我返回的文件流:

三、需實現(xiàn)的效果是:點擊列表中“查看發(fā)票”(左圖),跳轉(zhuǎn)到在線預(yù)覽界面(右圖,是微信自帶的,不需要寫ui界面)。

四、主要代碼如下:

// 在線預(yù)覽發(fā)票文件
  openFile(event){
    wx.showLoading({
      title: '加載中',
    })
    let { invoiceId } = event.currentTarget.dataset.msgarr; //發(fā)票id
    // 接口請求
    wx.request({
      url: config.baseUrl + `/wechatApplet/wechatPayFlow/getPdfFile/${invoiceId}`,
      header: {
        "content-type": "application/json",
        "token": wx.getStorageSync('logToken').token
      },
      method: "GET",
      responseType: "arraybuffer", //此處是請求文件流,必須帶入的屬性
      success: rest => {
        if(rest.statusCode === 200){
          const fs = wx.getFileSystemManager(); //獲取全局唯一的文件管理器
          fs.writeFile({ // 寫文件
            filePath: wx.env.USER_DATA_PATH + "/電子發(fā)票在線預(yù)覽.pdf", // wx.env.USER_DATA_PATH 指定臨時文件存入的路徑,后面字符串自定義
            data: rest.data,
            encoding: "binary", //二進制流文件必須是 binary
            success (res){
              wx.openDocument({ // 新開頁面打開文檔
                filePath: wx.env.USER_DATA_PATH + "/電子發(fā)票在線預(yù)覽.pdf",  //拿上面存入的文件路徑
                success: function (res) {
                  setTimeout(()=>{wx.hideLoading()},500)
                }
              })
            }
          });
        }
      }
    })
  },

五、參考文獻:

  1. HTTPS 網(wǎng)絡(luò)請求( wx.request ):https://developers.weixin.qq.com/miniprogram/dev/api/network/request/wx.request.html
  2. 獲取全局唯一的文件管理器( FileSystemManager ):https://developers.weixin.qq.com/miniprogram/dev/api/file/FileSystemManager.html
  3. 寫文件 ( FileSystemManager.writeFile ):https://developers.weixin.qq.com/miniprogram/dev/api/file/FileSystemManager.writeFile.html
  4. 新頁面打開文檔( wx.openDocument ):https://developers.weixin.qq.com/miniprogram/dev/api/file/wx.openDocument.html

相關(guān)案例查看更多