小程序嵌套的h5页面,使用JsSdk接口上传图片:
在ios下,通过wx.getLocalImgData获取图片的base64数据,想把base64转成File对象上传到本地的ftp服务器上,发现上传后的文件大小为0kb.
不知道是不是转换后的file对象有问题?
wx.getLocalImgData({
localId: res.localIds[i], // 图片的localID
success: function (res) {
let localData = res.localData // localData是图片的base64数据,可以用img标签显示
//iOS 系统里面得到的数据,类型为 image/jgp,因此需要替换一下
localData = localData.replace(‘jgp’, ‘jpeg’)
let newFile=_this.dataURLtoFile(localData,i+’.jpg’)
newFile.src = localData
_this.transformSingleFile(_this.doctor.id,newFile,‘2’)
}
})
dataURLtoFile(dataurl,filename){
var arr = dataurl.split(’,’), mime = arr[0].match(/:(.*?);/)[1],
bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);
while(n–){
u8arr[n] = bstr.charCodeAt(n);
}
return new File([u8arr], filename, {type:mime});
}