uni-app 打包的安卓app使用uni.uploadFile有时候成功有时候失败并报错uploadFile:fail undefined
uni-app 打包的安卓app使用uni.uploadFile有时候成功有时候失败并报错uploadFile:fail undefined
开发环境 | 版本号 | 项目创建方式 |
---|---|---|
Windows | win10 | HBuilderX |
产品分类:uniapp/App
PC开发环境操作系统:Windows
PC开发环境操作系统版本号:win10
HBuilderX类型:正式
HBuilderX版本号:4.36
手机系统:Android
手机系统版本号:Android 15
手机厂商:vivo
手机机型:iqoo neo9spro+
页面类型:vue
vue版本:vue2
打包方式:云端
示例代码:
uni.uploadFile({
header: {
'token': api.__CFG.TOKEN || '',
'content-type': 'multipart/form-data'
},
url: this.Setting.url,
filePath: data.fullPath,
name: 'file',
formData: formData,
success: res2 => {
console.log('888',res2)
// fs.unlinkSync(tempPath)
if (res2.statusCode === 200) {
const r_data = JSON.parse(res2.data)
if (r_data.error == 0) {
this.currentChunk++
if (this.currentChunk < this.chunks) {
this.loadNext()
} else {
r_data.md5value = datas.md5value
console.log('formData',datas)
this.callback(r_data)
}
} else {
this.callback(false)
}
} else {
this.callback(false)
}
},
fail: err => {
console.log('999',err)
this.callback(false)
}
})
操作步骤:
按我上述操作
预期结果:
能正常返回走进success而不是走到fail去
实际结果:
大概率会走到fail去,但有时候又进success正常请求
bug描述:
目前只测试到安卓app中使用uni.uploadFile大部分会走fail 然后打印出来是uploadFile:fail undefined,但是有时候又可以正常上传,不知道怎么回事
更多关于uni-app 打包的安卓app使用uni.uploadFile有时候成功有时候失败并报错uploadFile:fail undefined的实战教程也可以访问 https://www.itying.com/category-93-b0.html
请提供简化的复现此问题的示例项目,包括要上传的文件。
更多关于uni-app 打包的安卓app使用uni.uploadFile有时候成功有时候失败并报错uploadFile:fail undefined的实战教程也可以访问 https://www.itying.com/category-93-b0.html
估计应该是文件大了,文件也就5m,目前做切片处理了,但是app里切片没看见5+app里面有切文件成字节流上传的,现在是转base64然后切上传的,希望可以改进下
这个问题通常与网络环境或服务器配置有关。以下是可能的原因和解决方案:
- 网络问题:
- 检查手机网络是否稳定,建议切换WiFi/4G测试
- 上传大文件时可能出现超时,可尝试分片上传
- 服务器配置:
- 检查服务器是否支持大文件上传
- 确认服务器upload_max_filesize和post_max_size配置足够大
- 代码优化建议:
- 添加超时配置:
uni.uploadFile({
timeout: 10000, // 10秒超时
// 其他配置...
})
- 错误处理增强:
fail: err => {
console.error('上传失败:', err);
if(err.errMsg === 'uploadFile:fail undefined') {
// 可能是网络问题
}
this.callback(false)
}