问题标签 [google-api-gateway]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
135 浏览

google-cloud-platform - 无服务器框架中的谷歌云平台 API 网关?

我目前正在寻找一个使用无服务器框架为 GCP 实现 API 网关的示例,类似于将它与 AWS 一起使用的方式,有没有人使用该框架成功实现了这样的解决方案?我已经看到了一个不错的例子,但是无服务器文档似乎没有例子,所以我想知道现在是否有可能使用无服务器框架。

0 投票
0 回答
37 浏览

google-cloud-platform - Gcp Cloud 部署管理器是否支持创建 Api 网关?

我的一个项目有问题,我需要创建一个在 GCP 中创建 Api 网关的云部署管理器模板。有人可以支持这个问题吗?

0 投票
0 回答
90 浏览

amazon-web-services - 谷歌云 API 网关覆盖请求参数

有什么方法可以在 API 网关本身重命名请求参数,而不是更改云功能代码,例如 appVersion 到 app_version

在 AWS api 网关中,我使用了x-amazon-apigateway-integration 的requestTemplates

0 投票
0 回答
57 浏览

google-cloud-run - GCP API Gateway 为 HTTP GET 方法传递 JSON 有效负载

这里使用了 GET 请求,但 API Gateway 给了我 400。如何在 GET 请求中传递正文参数以及查询参数。

0 投票
1 回答
199 浏览

google-cloud-platform - Google Cloud Api Gateway 是否提供请求签名和验证 sdk,例如使用 Signature 4 签署 AWS API Gateway 请求?

在 Google Cloud文档中,它提到了已签名的请求,但没有提供任何进一步的信息。有谁知道 Google Cloud Api Gateway 是否提供这样的功能?

该 API 可用于未登录的用户,因此我无法使用 JWT 授权。

在此处输入图像描述

0 投票
1 回答
176 浏览

google-cloud-platform - Google API Gateway - 响应流式传输数据

我正在使用谷歌云 API 网关,以便对我的后端服务进行单点访问,并添加 api-key 安全级别。

而且我有一个端点,它应该将数据作为流块逐块返回(内容类型是音频/mpeg)。端点称为 GET /stream。

我注意到,当我通过 Google API Gateway 访问这个 GET /stream 端点时,响应的返回延迟为 3-4 秒,而不是作为流,而是作为完整的响应。另外,我注意到响应中还返回了 Content-Length 标头,这使我认为只有在将响应返回给发出请求的客户端之后才在网关端下载第一个响应。

当然,如果我使用原始 API(没有 Google API Gateway),我可以立即使用流响应而不会出现任何延迟。

以下是通过 swagger 2.0(openAPI) 协议对 Google API Gateway 配置进行描述的方式: 在此处输入图像描述

Google API Gateway 目前是否支持流式响应?我可以在网关的 swagger 2.0 配置中进行任何更改吗?Bacisly,关于我可以使用什么来替代 Google API Gateway 来满足我的需求 + 流支持的任何建议?

任何建议表示赞赏。提前致谢!

0 投票
1 回答
112 浏览

api - GCP API Gateway:路径参数作为查询参数传递

我正在尝试使用 GCP API Gateway 为我的几个后端服务(A、B、C、D)创建一个端点,每个端点都有自己的路径结构。我为以下服务之一配置了网关:

这部署得很好。但是当我到达端点时gateway_url/service_a/match/123,它会被路由到cloud_run_url/match/%7Bid_%7D?id_=123而不是cloud_run_url/match/123.

我怎样才能解决这个问题?

0 投票
0 回答
92 浏览

firebase - 无法创建 grpc + Cloud Run + API Gateway + Firebase Authentication API Config

我正在尝试使用 API Gateway 添加 Firebase 身份验证以访问我的 Cloud Run 服务。我正在使用 grpc 访问 Cloud Run 中的服务端点。

从 CLI运行api-config create时,我收到以下错误。

如您所见,规则在backend. 所以不确定缺少什么。此外,您能否建议这是否是将 Firebase Auth 与 grpc 一起使用的正确方法。我使用与 GCP 中的 REST + Firebase AUth + API Gateway 相同的设置。

0 投票
2 回答
406 浏览

python - 如何使用 API 网关传递给 Cloud Function 的服务帐户的 JWT 在 Cloud Function 中初始化 Google BigQuery 客户端

目标:
我已经建立了一个谷歌 API 网关。API 的后端是一个云函数(用 python 编写)。云功能应从 Google BigQuery (BQ) 查询数据。为此,我想创建一个 BQ 客户端 ( google.cloud.bigquery.Client())。API 应该由使用不同服务帐户的不同应用程序访问。服务帐户有权访问我项目中的特定数据集。因此,服务帐户/应用程序应该只能查询他们有权查询的数据集。因此,云函数内的 BQ Client 应使用向 API 发送请求的服务帐户进行初始化。

我尝试了什么:
API 使用以下 OpenAPI 定义进行保护,因此需要由服务帐户 SA-EMAIL 签名的 JWT 才能在那里发送请求:

对于使用我的云功能的路径,我使用以下后端配置:

因此,在云功能本身中,我从 API 网关获得了转发的 JWT,X-Forwarded-Authorization以及已经验证的 base64url 编码的 JWT 有效负载。 我尝试使用 JWT来获取凭据:X-Apigateway-Api-Userinfo
X-Forwarded-Authorization

起初,这似乎在cred.valid返回时有效True,但是当尝试使用google.cloud.bigquery.Client(credentials=cred)它创建客户端时,会在日志中返回以下错误:

我对 auth/oauth 没有太多经验,但我认为我没有必要的令牌/属性,错误是说在我的云功能中缺少可用的。另外,我不确定为什么会有RefreshError,因为我不想刷新令牌(也不要明确地这样做)并且只是再次使用它(可能是不好的做法?)。

问题:
是否有可能以我尝试过的方式或任何其他方式实现我的目标?

0 投票
1 回答
58 浏览

google-cloud-platform - 无法删除 google api gateway 配置文件

我试图从 UI 和命令行的 google api 网关服务中删除配置文件。但是他们说目标配置文件正在使用中,但我在 UI 和 gcloud 命令的结果中都找不到它以获取 api 网关列表。现在它不允许我创建它,所以我的过程无缘无故地失败了。见下图。尝试删除配置时出现以下错误。但是没有使用此配置的此类网关。知道我的案子可能出什么问题吗?在此处输入图像描述