收藏
回答

微信,ios,升级到当前最新版本7.0.5后下载问题

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug wx.downloadFile 微信iOS客户端 7.0.5 2.8.2

亲爱的开发团队,你们是不是又把底层下载的库更新了:(,之前都好好的

问题1:

ios微信升级到最新版本后

下载图片类型的文件,并且heaader头设置如下的这种

Content-Type:binary/octet-stream


直接会报错,自动退出下载流程,请务必修复,别说让我们自己把content-type:改成图片类型来解决,数据量大,不太好调整了。而且,浏览器都能正常下载这种类型文件,而且之前版本也能正常下载这种类型文件!

{errMsg: "downloadFile:fail file data is empty"}


问题2:

android和ios最新版本,下载这种类型的图片,接着再操作保存到相册的api,同时都会提示文件类型错误的提示!

现在调整方法了,直接指定文件名来保存到用户空间目录,可以暂时绕过这个问题,主要代码,已经提前申请了权限的。 用的这种图片,带签名的,直接或获取不到图片后缀,最终保存到本地的是 xxxx.unkown 这种名字的图片:

https://sioeye-disney-aeon-test.s3.cn-north-1.amazonaws.com.cn/6224886b1529499ea7b1d752545f3d6d/cc0b7ed46b5c4896bece27c5f4e36ba6/images/photo/50f9324f435840b78a082a71264aacd5.jpg?x-amz-acl=public-read&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20190905T031635Z&X-Amz-SignedHeaders=host&X-Amz-Expires=1799&X-Amz-Credential=AKIAO7QXSMTQKKQGQWRQ%2F20190905%2Fcn-north-1%2Fs3%2Faws4_request&X-Amz-Signature=47c2dff564b0842812964bc6033702a285b9e15fd2cccf737f7ae883420bb25f


这个问题的临时解决方案:

var self = this
var fileSavePath = wx.env.USER_DATA_PATH + '/' + md5(url) + '.jpg'
// 保存到本地的方式,解决后缀问题
const task1 = wx.downloadFile({
url: url,
filePath: fileSavePath,
success: res => {
console.log('res.tempFilePath', res)
if (res.filePath) {
// if (res.tempFilePath) {
           wx.saveImageToPhotosAlbum({
filePath: res.filePath,
success: resp => {
util.toastInfo('保存相册成功')
},
fail: err => {
util.toastInfo('保存相册失败')
console.log('下载失败:', err)
}
})
} else {
util.toastInfo('保存相册失败')
console.log('下载失败:', res)
}
},
fail: res => {
util.toastInfo('保存相册失败')
console.log('主动取消下载:', res)
}
})




最后一次编辑于  2019-09-05
回答关注问题邀请回答
收藏

3 个回答

登录 后发表内容
问题标签