AWS S3:CORS 配置未实施 [关闭]

Posted

技术标签:

【中文标题】AWS S3:CORS 配置未实施 [关闭]【英文标题】:AWS S3: CORS configuration not implementing [closed] 【发布时间】:2021-01-22 06:45:14 【问题描述】:

我正在尝试以 PDF 格式下载网页。但是由于这个问题,图像没有以 PDF 格式出现:

Access to image at 'https://server.s3-us-west-2.amazonaws.com/images/icon.png' from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

为了解决这个问题,我做了以下事情:

在 S3 存储桶 CORS 配置中,我添加了此代码-

<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
    <AllowedOrigin>http://localhost:3000/</AllowedOrigin>
    <AllowedMethod>GET</AllowedMethod>
    <MaxAgeSeconds>3000</MaxAgeSeconds>
    <AllowedHeader>*</AllowedHeader>
</CORSRule>
</CORSConfiguration>

在(反应)前端,我在标签中添加了一个属性 crossorigin="anonymous"

<img src=process.env.REACT_APP_AWS_S3_PATH + `icons/$data.displayIcon` crossorigin="anonymous" />

谁能告诉我,我哪里做错了?

【问题讨论】:

【参考方案1】:

您确定存储桶设置为公开吗? 当找不到您需要的文件时,S3 也会返回 cors 错误

【讨论】:

是的,存储桶是公开的,文件在资源文件夹中可用。

以上是关于AWS S3:CORS 配置未实施 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

使用 CORS 在 AWS S3 存储桶上获取

[AWS-S3] POST 上的预签名 URL 被 CORS 阻止,尽管 CORS 配置启用它

AWS - CORS 无法将文件直接上传到 S3

AWS S3 存储桶上传 CORS 错误

选项请求的 AWS S3 CORS 403 错误

对于 aws s3,预检响应无效(重定向)