javascript - 有没有办法在没有认知用户池和身份池的情况下使用 AWS Amplify 库 (JavaScript) 访问 s3 存储桶?
问题描述
我正在尝试使用放大库(JavaScript 来访问具有临时访问密钥和 STS 生成的秘密访问密钥的 s3 存储桶。但似乎我需要一个认知用户池和身份池。
import Amplify, { Storage } from 'aws-amplify';
Amplify.configure({
Storage: {
region: 'ap-south-1',
endpoint: "http://localhost:4572",
bucket: 'mybucket',
}
})
Storage.list('photos/').then(res => console.log(res)).catch(err => console.log(err))
有没有办法在不使用 AWS SDK 的情况下实现这一目标?
[WARN] 56:56.803 AWSS3Provider - ensure credentials error No Cognito Identity pool provided for unauthenticated access
No credentials
解决方案
您可以使用 AWS SDK for javascript,它在后台使用 AWS API。在这种情况下,您需要将 s3 存储桶公开/对所有人开放,或者使用 AWS IAM 凭证,这不是一种安全的方式。
推荐阅读
- javascript - 在 SSR React 应用程序上刷新 NextJS 查询参数
- uml - 实体关系图,只有一个类可以与另一个类交互时的概括
- php - WooCommerce 以编程方式创建的产品忽略价格排序过滤器
- c# - 如何将数据添加到 datagridview 组合框中
- xml - 当被迭代的项目是要选择的项目时,如何在 xsl:for-each 中选择项目?
- sql - 如何摆脱 SQL 脚本或 .xtxt 文件中的奇怪字符?
- angular - 如何正确使用`keep_classnames`?
- html - 关于 css 模块的一个快速问题,如果我总是需要 className
- c# - 调用线程无法访问此对象 - 不是 UI 对象
- json - Blogger/Blogspot 中的结构化数据 postMetadataJSON 是什么?