微信小程序安卓手机上传多张图片的实现方案

一、背景

当微信小程序有上传多张图片(大于等于2张)的功能时,如果使用并行上传的方案,在ios上是可以正常上传图片的,但在android上,通过手机调试信息,可以看到,只有第一次的请求成功上传图片,其余的并行上传均失败,导致这个问题的根本原因在于android当前版本的小程序尚不支持并行上传多图

二、解决方案

既然android不能并行上传,那么为了小程序在android、ios上都能成功跑起来,我们就只能使用串行上传的解决方案,目前本人的解决方案是,将上传的方法写在js模板类中,通过传入一个包含了图片地址的数组参数,如果数组不为空,则获取最新的一个图片地址,执行上传,在success回调函数中,删除已上传的图片地址,再调用方法,代码模板如下

//common.js
function sendPhotos(arr){
if(arr.length != 0){
    wx.uploadFile({
      url: 'http://example.weixin.qq.com/upload', //仅为示例,非真实的接口地址
      filePath: arr[0],
      name: 'file',
      formData:{
        'user': 'test'
      },
      success: function(res){
        var data = res.data
        //do something
        arr.splice(0,1)
        sendPhotos(arr)
      }
    })
}
}
module.exports.sendPhotos = sendPhotos
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值