微信JSSDK上传多张图片

以前是使用for循环实现的,可是安卓手机没有问题,苹果手机只能上传最后一张图片.android

好在有高手在前面趟路,实用的循环调用.苹果是没有,安卓不清楚.如下内容转自:http://leo108.com/pid-2069.asp浏览器

 

作过微信开发的都知道,在部分android机型里微信不支持网页上传图片的,这是因为这些机型的文件上传存在内存泄漏,会致使微信闪退,因此微信内置浏览器将文件上传屏蔽。这就致使这些机型的用户在使用微信浏览器访问某些须要上传图片的网页时功能不正常。服务器

 前不久微信公开了一些接口,其中有一个uploadImage接口用于上传图片,通常和chooseImage接口配合使用。先调用chooseImage接口让用户选择一张或者多张图片,用户选择完毕后微信会返回被选中图片的id,再把图片id传给uploadImage接口上传图片。微信

 因为uploadImage一次只能上传一张图片,所以当用户选择多张图片时,须要屡次调用uploadImage接口来上传图片。微信开发

 可是在实践的过程当中发现,无论用户选中多少张图片,只有第一张可以上传成功。spa

 

 如下为实现代码:code

 

$(‘#filePicker‘).on(‘click‘, function () { wx.chooseImage({ success: function (res) { var localIds = res.localIds; syncUpload(localIds); } }); }); var syncUpload = function(localIds){ var localId = localIds.pop(); wx.uploadImage({ localId: localId, isShowProgressTips: 1, success: function (res) { var serverId = res.serverId; // 返回图片的服务器端ID //其余对serverId作处理的代码 if(localIds.length > 0){ syncUpload(localIds); } } }); };
相关文章
相关标签/搜索