【发布时间】:2021-03-16 15:48:06
【问题描述】:
您好,我正在尝试使用名为 react-s3 的 NPM 包从我的 React 应用程序将图像上传到 AWS S3。我正在使用 AWS Educate 帐户并正确设置了访问密钥和密钥。在我选择图像和控制台记录输出后,它给了我一个 403 禁止错误,如下所示。
POST https://shopkartimages.s3.amazonaws.com/403(禁止)
Response {type: "cors",
url: "https://shopkartimages.s3.amazonaws.com/",
redirected: false,
status: 403, ok:
false, …}
body: (...)
bodyUsed: false
headers: Headers
__proto__: Headers
ok: false
redirected: false
status: 403
statusText: "Forbidden"
type: "cors"
url: "https://shopkartimages.s3.amazonaws.com/"
__proto__: Response
我的存储桶策略如下:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "S3Permissions",
"Effect": "Allow",
"Principal": "*",
"Action": [
"s3:Get*",
"s3:List*"
],
"Resource": "arn:aws:s3:::shopkartimages/*"
}
]
}
我在 S3 中的 CORS 配置如下:
[
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"PUT",
"POST",
"DELETE"
],
"AllowedOrigins": [
"*"
],
"ExposeHeaders": [
"x-amz-server-side-encryption",
"x-amz-request-id",
"x-amz-id-2"
],
"MaxAgeSeconds": 3000
}
]
【问题讨论】:
-
检查您的访问密钥和密钥属于角色是否有权访问此S3存储桶。
-
是的兄弟,我已经检查了两个凭据并且它们是正确的
-
你能发布控制台错误吗?
-
我已经贴在上面了
-
您解决了这个问题吗? @aviboy2006
标签: reactjs amazon-web-services amazon-s3 cors