首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过AWS Cognito使用ng-file-upload进行上传?

如何通过AWS Cognito使用ng-file-upload进行上传?
EN

Stack Overflow用户
提问于 2015-11-24 17:37:37
回答 1查看 401关注 0票数 2

我已经为我的Angular应用程序安装了AWS Cognito,并且我正在尝试将文件挂接到ng- s3.putObject -upload Upload服务中。

我想使用ng-file-upload的Upload.upload()方法,但我不知道如何将现有的身份验证连接与Cognito一起使用。其思想是使用ng-file- upload的拖放,然后upload将使用现有的Cognito连接上传到s3。我该怎么做呢?我之所以要使用ng-file-upload的Upload.upload()方法,是为了帮助保留一些功能,比如进度条(如果这是不正确的,请纠正我)。

EN

回答 1

Stack Overflow用户

发布于 2015-11-30 16:18:41

我假设你正在尝试在单页应用中从你的客户端直接上传到S3存储桶。如果是这样,您可以先对文件URL进行预签名,然后尝试在ng- S3 -upload中使用它。预签名URL允许您将一次性访问权限授予可能无法直接访问以执行操作的其他用户。预签名生成使用您的凭据签名的有效URL,任何用户都可以访问该URL。默认情况下,SDK生成的URL在15分钟后过期。

要生成一个简单的预签名URL,允许任何用户将对象放入您拥有的存储桶中,可以使用以下对getSignedUrl()的调用:

代码语言:javascript
复制
//Initialize the SDK with Cognito Credentials
var s3 = new AWS.S3();
var params = {Bucket: 'myBucket', Key: 'myKey'};
var url = s3.getSignedUrl('putObject', params);
console.log("Use this url in ng-file-upload", url);

有关获取预签名URL的更多信息,请参阅此维基文件并查阅ng- http://docs.aws.amazon.com/AWSJavaScriptSDK/guide/node-examples.html#Amazon_S3__Getting_a_pre-signed_URL_for_a_PUT_operation_with_a_specific_payload -upload文档

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33890036

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档