You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Cloud API Gateway如何配置动态路径端点?

Google Cloud API Gateway 支持路径参数式动态端点吗?

我正在使用Google Cloud API Gateway,需要配置路径为product后跟随产品ID的动态端点,比如https://www.my-endpoint/product/1、https://www.my-endpoint/product/2这类格式。

我已经掌握了基于查询参数的端点配置(比如/product-info?productid=1),对应的OpenAPI配置如下:

"/product-info":
  get:
    x-google-backend:
      address: https://my-endpoint/product-info
    operationId: "product-id-endpoint"
    parameters:
      -
        name: iataCode
        in: query
        required: false
        type: string
    responses:
      200:
        description: "Success."
        schema:
          type: string
      400:
        description: "Failed"

但我不清楚如何配置这种将参数作为路径一部分的动态端点,想确认Google Cloud API Gateway是否支持该功能?我已经在AWS API Gateway实现了此需求,认为GCP也应该支持。


回答

Google Cloud API Gateway完全支持这种路径参数式的动态端点配置,配置方式符合OpenAPI规范,思路和AWS API Gateway一致。

配置示例

以下是匹配你需求的OpenAPI配置:

"/product/{productId}":
  get:
    x-google-backend:
      address: https://my-endpoint/product/{productId}
    operationId: "product-detail-endpoint"
    parameters:
      -
        name: productId
        in: path
        required: true
        type: string
    responses:
      200:
        description: "Success."
        schema:
          type: string
      400:
        description: "Failed"

关键配置说明

  • 路径定义:用{参数名}格式在路径中标记动态参数,比如/product/{productId}
  • 参数声明:在parameters数组中,将in字段设为path,且必须设置required: true(路径参数属于必填项)
  • 后端参数传递:如果需要把路径参数转发给后端服务,直接在x-google-backend的address中使用相同的{productId}占位符即可,API Gateway会自动替换请求中的实际参数值

如果后端服务接收参数的格式和网关路径不一致,还可以通过x-google-backend的rewrite规则调整传递方式,比如:

x-google-backend:
  address: https://my-endpoint/product-info
  rewrite:
    path: /product-info?productid={productId}

这种配置会把网关的/product/1请求转发到后端的/product-info?productid=1。


内容的提问来源于stack exchange,提问作者riemann_lebesgue

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 09:05:23