一、需求

办公类的小程序一般都会涉及到文件的上传,像是Word,Excel,PPT,PDF之类的文档。虽然手机上操作不是很方便,但是功能不可或缺。


二、分析思路

小程序的官方文档中有个上传文件的接口wx.uploadFile(Object object)

image.png

接口示例:

wx.chooseImage({
  success (res) {
    const tempFilePaths = res.tempFilePaths
    wx.uploadFile({
      url: 'https://example.weixin.qq.com/upload', //仅为示例,非真实的接口地址
      filePath: tempFilePaths[0],
      name: 'file',
      formData: {
        'user': 'test'
      },
      success (res){
        const data = res.data        //do something
      }
    })
  }})


看似很简单,只要拿到文件路径就行。再接下去看微信的接口,问题来了,只有获取图片,视频的API,没法获取手机本地的文件。百度了一堆资料,没找到相关方法。官方给出了一个API,wx.chooseMessageFile(Object object),只能是从微信聊天中获取文件。也就是说,在聊天框里发过的文件都是可以获取到的。

image.png

image.png

我们需要上传的是word,pdf之类的文档,所以type选择file

wx.chooseMessageFile({
  count: 10,
  type: 'file',
  success (res) {
    // tempFilePath可以作为img标签的src属性显示图片
    const tempFilePaths = res.tempFiles  
    }
})

调用这个API后,会弹出一个聊天框选择界面,选择一个聊天后,进去就行勾选文件了,点击确定上传选中的文件

赞助本站,网站的持续发展离不开你们的支持!一分也是爱ヾ(◍°∇°◍)ノ゙
 本文链接: ,花了好多脑细胞写的,转载请注明链接喔~~
登陆
      正在加载评论