无法获取用于S3上传的视频文件 使用Expo Camera

问题描述

我一直试图将视频上传到S3一段时间,并一直希望获得一些指导。目前,我已阅读并得知,我们需要将实际文件发送到S3,而不是url(如果在aws之前将其发送到后端,则可能会这样做)。

我正在尝试通过

const getBlob = async (fileURi) => {
    console.log('THIS IS IT',fileURi);
    const resp = await fetch(fileURi);
    const videoBody = await resp.blob();
    console.log(videoBody);
};
getBlob(video.uri);

我遇到的问题是我无法实际获取视频文件。当我停止使用await camera.stopRecording();录制视频时,得到的回报是

Object {
  "uri": "file:///path/20DD0E08-11CA-423D-B83D-BD5ED40DFB25.mov",}

是否有推荐的方法来成功获取实际文件,以便通过客户端将其发送到S3?

我当前尝试发送不起作用的视频的方式是:

    const formData = new FormData();
    formData.append('file',video.uri);

    await fetch(url,{
        method: 'POST',body: formData,headers: {
            'Content-Type': 'multipart/form-data'
        }

url:指的是我们从aws返回的presignedUrl。

PS-通过fetch调用发送到服务器确实可以,但是我注意到这种方法还会使用户等待10秒钟以上,因为我需要将视频发送到服务器,然后等待它完成在AWS中的上传。 / p>

谢谢您的帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)