如何使用 Access-Control-Allow-Origin 服务 AWS S3 文件:* header

How to serve AWS S3 file with Access-Control-Allow-Origin: * header

我在 S3 中有一个 JS 文件,它被 Cloudflare CDN 获取,然后才最终在前端提供服务。现在一些最终用户有 CORS 错误。所以我想将 Access-Control-Allow-Origin: * 添加到此文件中。据我所知,cloudflare 会自动传递它得到的 headers,所以我试图找出一种方法来添加 header,同时从 S3 中挑选它。

https://docs.aws.amazon.com/AmazonS3/latest/userguide/cors.html#how-do-i-enable-cors

找到了这个指南,但我不太确定如何使用其中的 JSON。

[
    {
        "AllowedHeaders": [
            "*"
        ],
        "AllowedMethods": [
            "GET"
        ],
        "AllowedOrigins": [
            "http://mydoman.com"
        ],
        "MaxAgeSeconds": 3000
    }
]

这样看起来对吗?有没有人在从 s3 提供文件时添加过这样的自定义 header?有人可以建议正确的 JSON 吗?或者其他需要的东西?

假设其他设置正确,您需要:

[
  {
    "AllowedHeaders": [
        "*"
    ],
    "AllowedMethods": [
        "GET"
    ],
    "AllowedOrigins": [
        "*"
    ],
    "MaxAgeSeconds": 3000
  }
]

添加到 S3 存储桶属性的“权限”选项卡时,最终会在最底部的 CORS 字段中生成 Access-Control-Allow-Origin: * header。