2015-04-28
2018-08-21 06:20:42
最近我在用 PHP 做某微信公众号的开发,其中用到了微信jssdk进行图片的选择和上传。在参考了微信官方提供的jssdk文档之后,大致有了思路,即先选图或拍照,获得 localIds,再上传图片,成功后获得 serverId,之后就可以根据 serverId,从微信服务器获取图像。 然而在选择图片后紧接着开始上传图片,却出现了问题:脚本总会在选择图片还没结束的时候直接就走到文件上传,导致上传时会出现localId为空的错误。动手搜索了一下,果然有解决方法,参考:
wx.chooseImage({
success: function (res) {
if(res.localIds.length == 1) {
//alert('开始上传!');
setTimeout(function (){
wx.uploadImage({
localId: res.localIds[0],
isShowProgressTips: 1,
success: function (res) {
//上传成功后的操作
},
fail: function (res) {
alert(JSON.stringify(res));
}
});
},100);
}
}
});
将上传动作放到setTimeout()里面就OK了!
参考:
low.bi 2018 | lowlog