微信小程序实现word,excell等文件下载
微信小程序實現word,excell等文件下載
- 微信小程序
- 復制文件到剪切板
- fastfdfs
- 后臺編寫
- 小程序頁面編寫
- 小程序js編寫
- 運行結果
微信小程序
設計了一個微信小程序,要實現word、excell、ppt、pdf等文件下載的功能并且能通過手機自帶的文件查看器打開。但是查閱微信小程序提供api,發現能找到一個明顯的api. wx.downloadFile() 仔細閱讀該api后,發現只能實現保存臨時文件,在小程序本次啟動期間可以正常使用。這個可不能滿足我的需求。仔細查詢api后,發現有一個api,wx.saveFile()。仔細閱讀該api的文檔以后,發現只是將臨時文件保存到長期緩存中,只能在微信小程序中能訪問到,不能用手機自帶的文件查看器查看到,看到這里,只想說一句,卒。仔細翻看微信的api,發信web-view組件可以通過模擬瀏覽器,看情況可以通過瀏覽器下載。但是,考慮到到可以使用模擬瀏覽器,那為何不用真的瀏覽器叻,可以借助手機瀏覽器直接下載文件啊。這樣,整個思路就清晰了,從微信小程序獲取文件路,再粘貼路徑到瀏覽器地址欄通過瀏覽器實現文件下載。
復制文件到剪切板
查閱微信的api,發現有一個api, wx.setClipboardData(),該api可實現設置內容到剪切板。
fastfdfs
FastDFS是一個開源的輕量級分布式文件系統,它對文件進行管理,功能包括:文件存儲、文件同步、文件訪問(文件上傳、文件下載)等,解決了大容量存儲和負載均衡的問題。特別適合以文件為載體的在線服務,如相冊網站、視頻網站等等。
FastDFS為互聯網量身定制,充分考慮了冗余備份、負載均衡、線性擴容等機制,并注重高可用、高性能等指標,使用FastDFS很容易搭建一套高性能的文件服務器集群提供文件上傳、下載等服務。
這里我使用fastfdfs進行文件管理,可以通過文件路徑進行文件高速下載、便捷的下載,而且不需要寫多余的代碼,十分方便。
后臺編寫
后臺程序我是用的java編寫。只需要從數據庫獲取文件路徑就好,代碼過于簡單,這里省略。
小程序頁面編寫
<!--pages/Filedownload/index.wxml--> <text>點擊下面的復制鏈接 ,再打開瀏覽器粘貼地址即可下載:</text> <view bindtap='download' class='url'>復制鏈接</view>小程序js編寫
// pages/Filedownload/index.js Page({/*** 頁面的初始數據*/data: {url:'',//文件路徑},/*** 生命周期函數--監聽頁面加載*/onLoad: function (options) {var url=options.url;//從其他頁面傳過來文件路徑this.setData({url:url,})console.log("接收的路徑為");console.log(this.data.url);},//復制文件路徑到剪切板download:function(){var url=this.data.url;wx.setClipboardData({data: url,success: function (res) {// self.setData({copyTip:true}),wx.showModal({title: '提示',content: '復制成功',success: function (res) {if (res.confirm) {console.log('確定')} else if (res.cancel) {console.log('取消')}}})}})},})運行結果
下載文件的截圖不好截取,這里就省略。
總結
以上是生活随笔為你收集整理的微信小程序实现word,excell等文件下载的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NoteFirst的Word插件(Wor
- 下一篇: 使用3g模块SIM5360E收发短信