API Gateway 階段變數參考 - Amazon API Gateway

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

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:<region>:<account_id>:function:${stageVariables.<function_variable_name>}/invocations

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

注意

若要使用 Lambda 函數的階段變數,函數必須與 API 位於相同的帳戶中。階段變數不支援跨帳戶 Lambda 函數。

Amazon Cognito 使用者集區

階段變數可用來取代COGNITO_USER_POOLS授權者的 Amazon Cognito 使用者集區。

  • arn:aws:cognito-idp:<region>:<account_id>:userpool/${stageVariables.<variable_name>}

AWS 整合認證

階段變 AWS 數可以作為使用者/角色認證ARN 的一部分,如下列範例所示。

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