Javascript 如何使用AWS Amplify in React构建视频转码器管道?
我正在用AWS Amplify and React构建一个web应用程序。我试图实现的功能是一个经过身份验证的用户上传视频。S3存储桶有一个lambda触发器,可将视频转换成多种格式,以供不同的观众观看。这些文件被上传到一个单独的bucket,React Web应用程序将使用该bucket 问题是Amplify项目可能只有一个bucket与之关联。我完成了一个关于使用无服务器平台的教程,该平台运行良好,但是当我试图将第二个bucket转移到我的项目中时,第二个bucket被拒绝了。我相信直接操纵cloudformation模板是必要的,但我不知道如何或是否可能 AWS提供了一些媒体转码器服务,可以完成每个作业的转码,但我不知道如何通过React启动的lambda函数启动转码器作业,然后将结果与我的放大项目关联Javascript 如何使用AWS Amplify in React构建视频转码器管道?,javascript,reactjs,amazon-web-services,aws-amplify,amazon-elastic-transcoder,Javascript,Reactjs,Amazon Web Services,Aws Amplify,Amazon Elastic Transcoder,我正在用AWS Amplify and React构建一个web应用程序。我试图实现的功能是一个经过身份验证的用户上传视频。S3存储桶有一个lambda触发器,可将视频转换成多种格式,以供不同的观众观看。这些文件被上传到一个单独的bucket,React Web应用程序将使用该bucket 问题是Amplify项目可能只有一个bucket与之关联。我完成了一个关于使用无服务器平台的教程,该平台运行良好,但是当我试图将第二个bucket转移到我的项目中时,第二个bucket被拒绝了。我相信直接操纵
有什么建议吗?Amplify上还不支持多个存储桶 Amplify repository上打开了两个问题: 这: 这一个已经关闭,建议您在同一个存储库中使用不同的前缀作为“最佳实践” 但是如果你不能做到这一点,有一些变通办法来完成这项工作 这是另一张票: 最简单的解决方案是,如果您只需要调用一个
get
,而bucket位于同一个区域,那么您应该执行以下操作
Storage.get(key1, {bucket: 'other-bucket'});
另一种解决方案是调用configure
Amplify.configure({
...
Storage: {
bucket: 'other-bucket', //REQUIRED - Amazon S3 bucket
region: 'XX-XXXX-X', //OPTIONAL - Amazon service region
}
});
这有点烦人,但如果bucket位于不同的区域,并且您需要的操作不同于get