之前帮客户开发了一个基于微信公众号浏览器内的表单,内置了一个JS-SDK方式的图片上传功能。客户今天和我说9月中旬后上传图片功能的失效了,检查后发现图片保存不到服务器上去了。
wx.config(<?php echo $js->config(array('chooseImage','previewImage','uploadImage'), false) ?>);
wx.ready(function (){
$(document).on('click', '.upload_btn', function(e) {
var licounts = $("#imglist > li").length;
wx.chooseImage({
count: 9-licounts, // 默认9
sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
success: function(res) {
var images = {
localId: [],
serverId: []
};
var localIds = res.localIds;
images.localId = res.localIds;
// 返回选定照片的本地ID列表,localId可以作为img标签的src属性显示图片
//alert('已选择 ' + res.localIds.length + ' 张图片');
var i = 0, length = images.localId.length;
images.serverId = [];
function upload() {
wx.uploadImage({
localId: localIds[i],
success: function (res) {
i++;
images.serverId.push(res.serverId);
if (i < length) {
upload();
}else{
$(localIds).each(function(index, el) {
url=localIds[index];
var html = '<li id='+index+'><div class="del"><img src="__CDN__/assets/img/icon_del.png" onclick="del_img(this);"></div>'+
'<img src="'+url+'" class="upimage"><input type="hidden" name="image[]" value="'+images.serverId[index]+'">'+
'<input type="hidden" value="'+images.serverId[index]+'" name="fileup[]"></li>';
$('#imglist').append(html);
});
var licount = $("#imglist > li").length;
if(licount >= 9){
$('#upload_btn').remove();
}
}
}
});
}
upload();
}
});
});
...................
看了下网上说需要更新JS-SDK引用JS文件,于是在头部把之前的1.40版本更新为:
<script src="https://res.wx.qq.com/open/js/jweixin-1.6.0.js" type="text/javascript" charset="utf-8"></script>
你好,麻烦提供下复现的地址,详细描述一下复现的流程。