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

(Retool) query: Failed to upload. This might be due to a CORS issue on the bucket, so please double check that your CORS settings are correct

我多次未能通过 Retool 将文件上传到 GCP 上的 Cloud Storage并且总是出现以下错误:

query: Failed to upload. This might be due to a CORS issue on the bucket, so please double check that your CORS settings are correct.

实际上,我在 Cloud Shell 上使用以下命令创建了 cors.json:

vi cors.json

然后,将下面的代码写到cors.json:

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

最后,在 Cloud Storage,GCP 中为 my bucket 设置 cors.json ] 运行 下面的命令:

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

此外,存储桶的访问控制“细粒度”

是否有通过 Retool 将文件上传到 GCP 上的 Cloud Storage 的任何解决方案?

"x-goog-acl" 添加到 "responseHeader" 用于访问控制 桶的 "细粒度":

[
  {
    "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
  }
]