1

我多次无法从Retool将文件上传到GCP上的Cloud Storage,并且总是出现以下错误:

在此处输入图像描述

查询:上传失败。这可能是由于存储桶上的 CORS 问题,因此请仔细检查您的 CORS 设置是否正确。

实际上,我在Cloud Shell上使用以下命令制作了cors.json

vi cors.json

然后,将以下代码写入cors.json

[
  {
    "origin": ["https://myorigin.retool.com"],
    "method": ["*"],
    "responseHeader": ["Content-Type"],
    "maxAgeSeconds": 3600
  }
]

最后,在Cloud Storage 中为我的存储桶设置cors.json ,GCP运行以下命令:

gsutil cors set cors.json gs://mybucket-bc123.appspot.com

另外,桶的访问控制“细粒度的”

在此处输入图像描述

是否有任何解决方案可以将文件从Retool上传到GCP上的Cloud Storage

4

1 回答 1

2

“responseHeader”中添加“x-goog-acl” ,用于对“细粒度”桶的访问控制

[
  {
    "origin": ["https://myorigin.retool.com"],
    "method": ["*"],                
    "responseHeader": ["Content-Type", "x-goog-acl"],
    "maxAgeSeconds": 3600           // ↑↑↑ Here ↑↑↑
  }
]

另外,如果bucket的访问控制“Uniform”

在此处输入图像描述

不需要“x-goog-acl” :

[
  {
    "origin": ["https://myorigin.retool.com"],
    "method": ["*"],
    "responseHeader": ["Content-Type"],
    "maxAgeSeconds": 3600
  }
]
于 2021-10-20T06:06:18.627 回答