使用映射模板覆蓋API的請求和響應參數以及狀態代碼 - Amazon API 网关

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

使用映射模板覆蓋API的請求和響應參數以及狀態代碼

標準 API Gateway 參數與回應碼對應範本可讓您將參數對應, one-to-one 並將一系列由規則運算式比對的整合回應狀態碼對應至單一回應狀態碼。對應範本覆寫可讓您執行下列作業。

  • 執行 many-to-one 參數對映

  • 套用標準API閘道對映後覆寫參數

  • 根據主體內容或其他參數值有條件地對應參數

  • 編程創建新參數

  • 覆寫整合端點傳回的狀態碼

可以覆寫任何類型的請求參數、回應標頭,或回應狀態碼。

覆寫您API的要求和回應參數以及狀態碼的使用案例

在您的中API,您可以使用映射模板覆蓋API來執行以下操作。

  • 若要建立新的標頭 (或覆寫現有標頭) 做為兩個參數的連接

  • 若要根據內文內容將回應程式碼覆寫為成功或失敗程式碼

  • 若要有條件地根據它的內容或一些其他參數的內容重新對應參數

  • 若要反覆查看 json 內文的內容和將金鑰值對重新對應為標頭或查詢字串

覆寫您API的要求和回應參數以及狀態碼的考量

下列考量可能會影響對應範本覆寫的使用。

  • 對應範本覆寫無法用於 Proxy 整合端點,其缺乏資料對應。如需整合類型的詳細資訊,請參閱選擇 API Gateway API 整合類型

  • 覆寫是最終。覆寫只能套用到每個參數一次。如果您嘗試多次覆寫相同的參數,APIGateway 會傳回5XX回應。如果您必須多次在整個範本中覆寫相同的參數,我們建議您建立變數與在範本結尾套用覆寫。範本只會在剖析整個範本之後套用。如需更多資訊,請參閱使用覆寫API的要求參數和標頭 AWS Management Console

對映範本取代參考

若要建立映射範本覆寫,請使用映射範本中下列一個或多個 $context 變數

請求內文對應範本 回應內文對應範本。
$context.requestOverride.header.header_name $context.responseOverride.header.header_name
$context.requestOverride.path.path_name $context.responseOverride.status
$context.requestOverride.querystring.querystring_name

如需覆寫要求和回應參數和狀態碼的範例,請參閱覆蓋的請求和響應參數以及狀態碼的示例 API。API