相同的代码,在开发者工具和安卓真机上可以,在 iPhone 6s/Xs 真机上,wx.uploadFile 卡住,success/fail/complete/onProgressUpdate 都不会回调。微信是 7.0.10
代码非常简单,就是标准的调用:
function uploadFile(options, onProgressUpdate) {
return new Promise((resolve, reject) => {
const task = wx.uploadFile({
url: options.url,
header: options.headers,
name: options.name,
filePath: options.filePath,
formData: options.formData,
success(res) {
try {
resolve(JSON.parse(res.data))
} catch(e) {
resolve(res.data)
}
},
fail(e) {
const error = e.message || JSON.stringify(e)
resolve({ error, e })
}
})
if (onProgressUpdate) {
task.onProgressUpdate(res => {
onProgressUpdate(res)
})
}
})
}
这是确实会出现这问题 ios环境5m左右往上 就直接无法上传了 属于重大bug 到现在也没解决
更新:真机调试时,也可以正常调用。就是真机单独运行时,死活没有回调回来。