开发者社区> 问答> 正文

EMAS Serverless文件存储上传视频,真机报错[微信小程序]

调用SDK的uploadFile上传视频,开发工具上没问题,真机调试报错(后缀名校验不通过)

具体代码

wx.chooseVideo({
     sourceType: ['album', 'camera'],
     maxDuration: 60,
     success(res) {
          const options = {
                 filePath: res.tempFilePath,
          };
          console.log(options);
          mpserverless.file.uploadFile(options)
               .then(res => {
                     console.log(res);
                })
                .catch(err => {
                      console.log(err);
                });
     }
});

报错信息
image.png

SDK:

"@alicloud/mpserverless-sdk": "^3.1.5"

文档地址uploadFile

不要答非所问,我问的是sdk真机调试,云存储上传视频报后缀名校验不通过,实际上是符合校验规则的,,,,,

展开
收起
YYX 2023-07-26 17:37:47 122 0
2 条回答
写回答
取消 提交回答
  • 如果您在使用EMAS Serverless文件存储上传视频时,在微信小程序真机上遇到了错误,请尝试以下解决方法:

    1. 检查网络连接:确保您的微信小程序真机设备能够正常连接到互联网,以确保可以正常进行文件上传操作。

    2. 检查权限设置:在微信小程序真机环境中,需要确保您已经在小程序的配置文件(app.json)中添加了合适的权限声明,包括文件上传的权限。请确保已经正确配置了相关权限。

    3. 检查文件大小限制:EMAS Serverless文件存储对文件大小有一定的限制,通常最大支持上传几十MB的文件。请确保您要上传的视频文件大小不超过限制范围。

    4. 调试错误信息:在微信小程序真机环境中,可以通过开启调试模式,并使用微信开发者工具的控制台功能来查看具体的错误信息。请检查控制台是否有相关的错误提示或警告信息,以帮助您定位和解决问题。

    5. 更新SDK版本:如果您正在使用EMAS Serverless的旧版本SDK,建议尝试更新为最新的SDK版本,以获得更好的兼容性和稳定性。

    6. 咨询技术支持:如果以上解决方法仍然无法解决问题,建议您联系EMAS Serverless的技术支持团队,向他们详细描述您的问题,并提供相关的错误信息和设备环境信息,以获得更专业的帮助和支持。

    2023-07-26 18:26:47
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    API 有后缀名限制???

    这条报错信息表明:你上传的视频文件后缀名(.mp4)不在微信小程序文件的后缀名白名单中。

    Error: 参数校验错误: options.extension should be one of .jpg,.jpeg,...
    .mp4,.mpeg.

    options.extension 指的是上传的文件后缀名。
    该列表中的后缀名才允许微信小程序进行文件上传。

    而你上传的文件(wxfile://tmp_8b37eea5958a363980e048a9adf536f54e91f2588f7b4bb8.mp4)后缀名是.mp4,不在白名单中。

    为了解决这个问题,你有几个选择:

    修改视频文件后缀名,使用白名单中的后缀上传。比如改为.mp3。

    使用服务端上传接口,在服务端上传文件再返回路径给小程序。

    使用第三方云存储SDK,它可能对后缀名要求不那么严格。

    联系微信开发者平台,申请他们添加.mp4到后缀名白名单中。

    尝试更换其他允许.mp4后缀的小程序文件上传方案。

    2023-07-26 17:42:55
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
微信客户端怎样应对弱网络 立即下载
微信月活9亿的高效业务运维之道 立即下载
微信SQLite数据库损坏恢复实践 立即下载