

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

# 設定代理整合與代理資源
<a name="api-gateway-set-up-simple-proxy"></a>

若要在具有[代理資源](api-gateway-method-settings-method-request.md#api-gateway-proxy-resource)的 API Gateway API 中設定代理整合，您可以執行下列任務：
+ 使用 Greedy 路徑變數 `{proxy+}` 建立代理資源。
+ 在代理資源上設定 `ANY` 方法。
+ 使用 HTTP 或 Lambda 整合類型來整合資源/方法與後端。

**注意**  
Greedy 路徑變數、`ANY` 方法與代理整合類型是獨立功能，但通常會一起使用。您可以在 Greedy 資源上設定特定 HTTP 方法，或將非代理整合類型套用至代理資源。

使用 Lambda 代理整合或 HTTP 代理整合處理方法時，API Gateway 會實施特定約束與限制。如需詳細資訊，請參閱[Amazon API Gateway 重要說明](api-gateway-known-issues.md)。

**注意**  
 搭配傳遞使用代理整合時，如果未指定承載的內容類型，API Gateway 會傳回預設的 `Content-Type:application/json` 標頭。

使用 HTTP 代理整合或 Lambda 代理[整合](https://docs.aws.amazon.com/apigateway/latest/api/API_Integration.html)與後端整合時，代理資源最強大。

## HTTP 代理整合與代理資源
<a name="api-gateway-proxy-integration-types"></a>

HTTP 代理整合是由 API Gateway REST API 中的 `HTTP_PROXY` 所指定，適用於整合方法請求與後端 HTTP 端點。有了此整合類型，API Gateway 可根據特定[約束與限制](api-gateway-known-issues.md)，直接在前端與後端之間傳遞整個請求與回應。

**注意**  
HTTP 代理整合支援多值標頭和查詢字串。

將 HTTP 代理整合套用至代理資源時，您可以設定 API 透過單一整合設定，公開 HTTP 後端的部分或整個端點階層。例如，假設網站的後端從根節點 (`/site`) 組織成樹狀目錄節點的多個分支：`/site/a0/a1/.../aN`、`/site/b0/b1/.../bM` 等等。如果您將 `ANY` 之代理資源上的 `/api/{proxy+}` 方法與 `/site/{proxy}` 之 URL 路徑的後端端點整合，單一整合請求可支援任何 `[a0, a1, ..., aN, b0, b1, ...bM, ...]` 上的 HTTP 操作 (GET、POST 等)。如果您將代理整合套用至特定 HTTP 方法 (例如 `GET`)；相反地，產生的整合請求適用於任何後端節點上的指定 (也就是 `GET`) 操作。

## Lambda 代理整合與代理資源
<a name="lambda-proxy-integration-with-proxy-resource"></a>

Lambda 代理整合是由 API Gateway REST API 中的 `AWS_PROXY` 所指定，適用於整合方法請求與後端 Lambda 函數。有了此整合類型，API Gateway 可套用預設映射範本將整個請求傳送到 Lambda 函數，並將來自 Lambda 函數的輸出轉換成 HTTP 回應。

同樣地，您可以將 Lambda 代理整合套用至 `/api/{proxy+}` 的代理資源來設定單一整合，讓後端 Lambda 函數對 `/api` 下的任何 API 資源變更個別做出回應。