整合傳遞行為 - Amazon API 网关

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

整合傳遞行為

使用非代理整合,當方法請求傳送承載,但 Content-Type 標頭不符合任何指定的對應範本,或未定義任何對應範本時,您可以選擇將用戶端提供的請求承載透過整合請求傳送到後端,且不須轉換。這個過程稱為整合傳遞。

對於代理整合,APIGateway 會將整個請求傳遞至後端,而您無法選擇修改傳遞行為。

傳入請求的實際傳遞行為,是由您在整合請求設定期間針對指定對應範本所選擇的選項,以及用戶端在傳入請求中設定的內容類型標頭而決定。共有三個選項:

當沒有範本符合請求 Content-Type 標頭時

當方法請求內容類型不符合與對應範本相關聯的任何內容類型時,如果您想要讓方法請求內文透過整合請求傳遞到後端而不進行轉換,請選擇此選項。

呼叫API閘道時API,您可以在「整合」上設定WHEN_NO_MATCH為內passthroughBehavior容值來選擇此選項。

未定義範本時 (建議)

當整合請求中未定義任何對應範本時,如果您想要讓方法請求內文透過整合請求傳遞到後端而不進行轉換,請選擇此選項。如果在選取此選項時定義範本,則未對應內容類型的方法要求將會遭到 HTTP 415 不支援的媒體類型回應拒絕。

呼叫API閘道時API,您可以在「整合」上設定WHEN_NO_TEMPLATES為內passthroughBehavior容值來選擇此選項。

從不

當整合請求中未定義任何對應範本時,如果您不想要讓方法請求內文透過整合請求傳遞到後端而不進行轉換,請選擇此選項。如果在選取此選項時定義範本,則未對應內容類型的方法要求將會遭到 HTTP 415 不支援的媒體類型回應拒絕。

呼叫API閘道時API,您可以在「整合」上設定NEVER為內passthroughBehavior容值來選擇此選項。

下列範例說明可能的傳遞行為。

範例 1:針對 application/json 內容類型在整合請求中定義的一個對應範本。

Content-Type 標頭\選取的傳遞選項 WHEN_NO_MATCH WHEN_NO_TEMPLATES NEVER
無 (預設為 application/json) 使用此範本轉換請求承載。 使用此範本轉換請求承載。 使用此範本轉換請求承載。
application/json 使用此範本轉換請求承載。 使用此範本轉換請求承載。 使用此範本轉換請求承載。
application/xml 請求承載未轉換,而且會依現狀傳送到後端。 該請求被拒絕,並帶有HTTP415 Unsupported Media Type響應。 該請求被拒絕,並帶有HTTP415 Unsupported Media Type響應。

範例 2:針對 application/xml 內容類型在整合請求中定義的一個對應範本。

Content-Type 標頭\選取的傳遞選項 WHEN_NO_MATCH WHEN_NO_TEMPLATES NEVER
無 (預設為 application/json) 請求承載未轉換,而且會依現狀傳送到後端。 該請求被拒絕,並帶有HTTP415 Unsupported Media Type響應。 該請求被拒絕,並帶有HTTP415 Unsupported Media Type響應。
application/json 請求承載未轉換,而且會依現狀傳送到後端。 該請求被拒絕,並帶有HTTP415 Unsupported Media Type響應。 該請求被拒絕,並帶有HTTP415 Unsupported Media Type響應。
application/xml 使用此範本轉換請求承載。 使用此範本轉換請求承載。 使用此範本轉換請求承載。