Amazon API Gateway
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

Amazon API Gateway 阶段变量引用

在以下情况下,您可以使用 API Gateway 阶段变量。

参数映射表达式

阶段变量可在参数映射表达式中用于 API 方法的请求或响应标头参数,无需进行任何部分替换。在以下示例中,引用阶段变量时未使用 $ 和封闭的 {...}

  • stageVariables.<variable_name>

映射模板

阶段变量可在映射模板中的任何位置使用,如以下示例所示。

  • { "name" : "$stageVariables.<variable_name>"}

  • { "name" : "${stageVariables.<variable_name>}"}

HTTP 集成 URI

阶段变量可用作 HTTP 集成 URL 的一部分,如以下示例所示。

  • 不带协议的完整 URI,例如 http://${stageVariables.<variable_name>}

  • 完整域,例如 http://${stageVariables.<variable_name>}/resource/operation

  • 子域,例如 http://${stageVariables.<variable_name>}.example.com/resource/operation

  • 路径,例如 http://example.com/${stageVariables.<variable_name>}/bar

  • 查询字符串,例如 http://example.com/foo?q=${stageVariables.<variable_name>}

AWS 集成 URI

阶段变量可用作 AWS URI 操作或路径组件的一部分,如以下示例所示。

  • arn:aws:apigateway:<region>:<service>:${stageVariables.<variable_name>}

AWS 集成 URI (Lambda 函数)

阶段变量可用于替代 Lambda 函数名称或版本/别名,如以下示例所示。

  • arn:aws:apigateway:<region>:lambda:path/2015-03-31/functions/arn:aws:lambda::<account_id>:function:${stageVariables.<function_variable_name>}/invocations

  • arn:aws:apigateway:<region>:lambda:path/2015-03-31/functions/arn:aws:lambda::<account_id>:function:<function_name>:${stageVariables.<version_variable_name>}/invocations

AWS 集成凭证

阶段变量可用作 AWS 用户/角色凭证 ARN 的一部分,如以下示例所示。

  • arn:aws:iam::<account_id>:${stageVariables.<variable_name>}