【问题标题】:Google Api Gateway with Cloud Run CORS带有 Cloud Run CORS 的 Google Api 网关
【发布时间】:2021-03-15 20:30:19
【问题描述】:

有没有办法在 Cloud Run 服务的 Google Api 网关配置中启用 Cors?

我自己在服务中启用了 Cors,但我总是得到

从源“http://localhost:4200/”访问“xxx”处的 XMLHttpRequest 已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:没有“访问控制允许来源” ' 请求的资源上存在标头。

想知道是不是Api网关的问题,因为直接调用云运行服务就可以了。

【问题讨论】:

标签: cors google-cloud-run google-api-gateway


【解决方案1】:

您可以克服缺少的功能

  • 通过添加负载平衡器
  • 创建自定义标题Guide

您只需要添加“Access-Control-Origin”标头:

Allow all

Access-Control-Origin:'*'

查看API Gateway and Load balancer的步骤。

【讨论】:

  • 似乎我越来越近了,现在我得到 Control-Allow-Origin' 标头的值 'localhost' 不等于提供的原点。 (localhost:4200)。我猜这与 cloudrun 服务有关。正在调查中,感谢您的帮助!
  • 现在我得到:来自原点 'localhost:4200' 已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:它没有 HTTP ok 状态。
  • 看来问题是由于全局的 Firebase 身份验证设置而不是每个方法。将其更改为 Method 有效。
  • 我在 nodejs+cloudrun 中遇到了 GET 请求同样的问题。我尝试在代码中以及在预检规范中添加 OPTIONS,但到目前为止还没有运气。谁能帮助您解决此问题
猜你喜欢
  • 1970-01-01
  • 2020-03-12
  • 2021-01-21
  • 2015-07-13
  • 2020-09-17
  • 2021-12-11
  • 2021-09-14
  • 2021-11-27
  • 1970-01-01
相关资源
最近更新 更多