uni-app uniCloud.uploadFile()报错 uploadFile:fail statusCode: null

uni-app uniCloud.uploadFile()报错 uploadFile:fail statusCode: null

操作步骤:

  • 前端异步调用uniCloud.uploadFile()上传上百兆文件

预期结果:

  • 正常上传

实际结果:

  • 报错uploadFile:fail statusCode: null

bug描述:

  • 在前端异步调用uniCloud.uploadFile()时如果手机还进行其他操作的话报错uploadFile:fail statusCode: null;这个是什么情况,是异步操作其他而导致上传太慢超时了吗?这边uniCloud.uploadFile()如何设置超时时间;我这边在manifest.json中设置networkTimeout了也不起作用.

| 信息类型           | 内容                           |
|------------------|-------------------------------|
| 产品分类            | uniapp/App                       |
| PC开发环境操作系统     | Windows                          |
| PC开发环境操作系统版本号 | 10                               |
| HBuilderX类型        | 正式                             |
| HBuilderX版本号      | 4.04                             |
| 手机系统            | Android                          |
| 手机系统版本号        | Android 14                       |
| 手机厂商            | 华为                             |
| 手机机型            | dd                               |
| 页面类型            | vue                              |
| vue版本            | vue2                             |
| 打包方式            | 云端                             |
| 项目创建方式         | HBuilderX                        |

更多关于uni-app uniCloud.uploadFile()报错 uploadFile:fail statusCode: null的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

官方有人在吗?能否解决一下

更多关于uni-app uniCloud.uploadFile()报错 uploadFile:fail statusCode: null的实战教程也可以访问 https://www.itying.com/category-93-b0.html


在 uni-app 中使用 uniCloud.uploadFile() 上传文件时,如果出现 uploadFile:fail statusCode: null 的错误,通常是由于以下几个原因导致的。你可以根据这些原因逐一排查问题:

1. 网络问题

  • 确保设备或模拟器的网络连接正常。
  • 如果是真机调试,检查手机是否能够正常访问互联网。

2. 文件路径问题

  • 确保你传入的文件路径是有效的。例如,如果你是从用户选择的文件上传,确保路径正确。
  • 如果是本地文件路径,确保路径格式正确,例如:/static/example.jpg

3. 文件大小限制

  • uniCloud 上传文件有默认的大小限制(通常为 10MB),如果你的文件过大,可能会导致上传失败。
  • 如果需要上传大文件,可以在 uniCloud 控制台调整文件上传大小限制。

4. 云函数配置问题

  • 如果你是在云函数中处理文件上传,确保云函数配置正确,且云函数能够正常处理文件上传逻辑。
  • 检查云函数的返回值,确保返回了正确的状态码和数据。

5. uniCloud 配置问题

  • 确保你的 uniCloud 环境配置正确,包括 cloudfunctionsclientDB 的配置。
  • 如果你使用了自定义域名,确保域名配置正确且能够正常访问。

6. 权限问题

  • 确保你的应用有权限访问文件系统。
  • 如果是真机调试,检查是否授予了应用访问文件系统的权限。

7. 调试方法

  • 使用 console.loguni.showModal 打印上传过程中的关键信息,例如文件路径、上传 URL 等,帮助定位问题。
  • 使用 uniCloud.getTempFileURL 检查文件是否上传成功。

示例代码

以下是一个简单的 uniCloud.uploadFile() 示例代码,供你参考:

uni.chooseImage({
  success: (chooseImageRes) => {
    const tempFilePaths = chooseImageRes.tempFilePaths;
    uniCloud.uploadFile({
      filePath: tempFilePaths[0],
      cloudPath: 'example.jpg', // 云存储路径
      success: (uploadFileRes) => {
        console.log('上传成功', uploadFileRes);
      },
      fail: (err) => {
        console.error('上传失败', err);
      }
    });
  }
});
回到顶部