本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
下節說明使用 API Gateway 的介紹性概念。
- API Gateway
-
API Gateway 是支援下列項目的 AWS 服務:
- API Gateway REST API
-
與後端 HTTP 端點、Lambda 函數或其他 AWS 服務整合的 HTTP 資源和方法集合。您可以在一或多個階段中部署此集合。一般而言,會根據應用程式邏輯將 API 資源組織為資源樹狀結構。每個 API 資源都可接觸一個或多個 API 方法,而這些方法必須擁有 API Gateway 所支援的唯一 HTTP 動詞。如需更多詳細資訊,請參閱 在 REST API 與 HTTP API 之間選擇。
- API Gateway HTTP API
-
與後端 HTTP 端點或 Lambda 函數整合的路由和方法集合。您可以在一或多個階段中部署此集合。每個路由都可接觸一個或多個 API 方法,而這些方法必須擁有 API Gateway 所支援的唯一 HTTP 動詞。如需更多詳細資訊,請參閱 在 REST API 與 HTTP API 之間選擇。
- API Gateway WebSocket API
-
與後端 HTTP 端點、Lambda 函數或其他 AWS 服務整合的 WebSocket 路由和路由金鑰集合。您可以在一或多個階段中部署此集合。API 方法可透過前端 WebSocket 連線呼叫,該連線須能夠與已註冊的自訂網域名稱建立關聯。
- API 部署
-
您的 API Gateway API 時間點快照。若要可供用戶端使用,部署必須與一或多個 API 階段相關聯。
- API 開發人員
-
擁有 API Gateway 部署的 AWS 帳戶 (例如,同時支援程式設計存取的服務提供者)。
- API 端點
-
API Gateway 內已部署至特定區域之 API 的主機名稱。主機名稱的格式為
。支援下列類型的 API 端點:{api-id}
.execute-api.{region}
.amazonaws.com - API 金鑰
-
API Gateway 用來識別使用 REST 或 WebSocket API 之應用程式開發人員的英數字元字串。API Gateway 可以代表您產生 API 金鑰,或從 CSV 檔案匯入它們。您可以同時使用 API 金鑰與 Lambda 授權方或用量計劃,以控制對 API 的存取。
請參閱 API 端點。
- API 擁有者
-
請參閱 API 開發人員。
- API 階段
-
API 生命週期狀態的邏輯參考 (例如,'dev'、'prod'、'beta'、'v2')。您可以 API ID 和階段名稱來識別 API 階段。
- 應用程式開發人員
-
應用程式建立者,不一定有 AWS 帳戶而且會與 API 開發人員所部署的 API 互動。應用程式開發人員是您的客戶。通常會透過 API 金鑰識別應用程式開發人員。
- 回呼 URL
-
當新的用戶端透過 WebSocket 進行連線,您可在 API Gateway 中呼叫整合來存放用戶端的回呼 URL。之後您即可使用該回呼 URL 從後端系統傳送訊息到連接的用戶端。
- 開發人員入口網站
-
此應用程式允許您的客戶註冊、探索及訂閱 API 產品 (API Gateway 用量方案)、管理其 API 金鑰,以及檢視 API 的用量指標。
- 邊緣最佳化的 API 端點
-
API Gateway API 的預設主機名稱,該 API 會部署至指定區域,同時使用 CloudFront 分佈來促進跨 AWS 區域的用戶端存取。API 請求會路由到最近的 CloudFront 出現點 (POP),通常可改善分散各地之用戶端的連線時間。
請參閱 API 端點。
- 整合請求
-
API Gateway 內 WebSocket API 路由或 REST API 方法的內部界面,您要將其中路由請求或參數的本文及方法請求的本文,映射至後端要求的格式。
- 整合回應
-
API Gateway 內 WebSocket API 路由或 REST API 方法的內部界面,您要將其中從後端接收的狀態碼、標頭和承載,映射至將傳回用戶端應用程式的回應格式。
- 對應範本
-
以 Velocity 範本語言 (VTL)
表示的指令碼,可將請求本文從前端資料格式轉換為後端資料格式,或是將回應本文從後端資料格式轉換為前端資料格式。映射範本可指定於整合請求或整合回應中。它們可以參考在執行時間提供為內容和階段變數的資料。 映射可如同身分轉換
一樣簡單,可透過整合的現狀依照請求將標頭或本文從用戶端傳遞至後端。回應也是如此,其中承載會從後端傳遞至用戶端。 - 方法請求
-
API Gateway 中 API 方法的公有界面,定義應用程式開發人員必須在請求中傳送以透過 API 存取後端的參數和內文。
- 方法回應
-
REST API 的公有界面,其定義的狀態碼、標頭和本文模型應為應用程式開發人員預期自 API 接收的回應。
- 模擬整合
-
模擬整合中,API 回應由 API Gateway 直接產生,無須整合後端。作為 API 開發人員,您可決定 API Gateway 回應如何模擬整合請求。因此,您設定方法的整合請求和整合回應,以將回應與特定狀態碼建立關聯。
- 模型
-
資料結構描述,其指定請求或回應承載的資料結構。必須使用模型才能產生 API 的強類型開發套件。模型也用來驗證承載。模型方便用於產生範例對應範本以啟動生產對應範本的建立。模型雖然實用,但不是建立對應範本的必要項目。
- 私有 API
-
請參閱私有 API 端點。
- 私有 API 端點
-
可由界面 VPC 端點接觸的 API 端點,可允許用戶端在 VPC 內安全存取私有 API 資源。私有 API 與公有網際網路彼此隔離,而且只能使用已授與存取權限的 API Gateway VPC 端點存取。
- 私有整合
-
一種 API Gateway 整合類型,可讓用戶端透過私有 REST API 端點存取客戶 VPC 內的資源,無須將資源公開在公有網際網路。
- 代理整合
-
簡化的 API Gateway 整合組態。您可將代理整合設定為 HTTP 代理整合或 Lambda 代理整合。
針對 HTTP 代理整合,API Gateway 會在前端與 HTTP 後端之間傳遞整個請求和回應。針對 Lambda 代理整合,API Gateway 會傳送整個請求作為後端 Lambda 函數的輸入。API Gateway 接著會將 Lambda 函數輸出轉換為前端 HTTP 回應。
在 REST API 中,代理整合通常會與代理資源搭配使用,而代理資源會結合全部截獲
{proxy+}
方法,以 Greedy 路徑變數 (如ANY
) 呈現。 - 快速建立
-
您可以使用快速建立來簡化 HTTP API 的建立。快速建立會建立具有 Lambda 或 HTTP 整合的 API、預設的全部捕獲路由,以及設定為自動部署變更的預設階段。如需更多詳細資訊,請參閱 使用 CLI AWS 建立 HTTP API。
- 區域 API 端點
-
API 的主機名稱,其部署至特定區域且用於服務相同 AWS 區域的用戶端 (如 EC2 執行個體)。API 請求的目標是直接設為區域特定 API Gateway API,而不需要通過任何 CloudFront 分佈。針對區域中請求,區域端點會略過與 CloudFront 分佈的不必要往返。
此外,您還可以在區域端點上套用延遲型路由,以使用相同的區域 API 端點組態來將 API 部署至多個區域、設定每個已部署 API 的相同自訂網域名稱,以及在 Route 53 中設定延遲型 DNS 記錄,以將用戶端請求路由至擁有最低延遲的區域。
請參閱 API 端點。
- 路由
-
API Gateway 內的 WebSocket 路由用來根據訊息內容將傳入訊息導向特定整合,如 AWS Lambda 函數。定義 WebSocket API 時,須指定路由金鑰和整合後端。路由金鑰是訊息本文中的一個屬性。若傳入訊息的路由金鑰相符,將呼叫整合後端。
預設路由也可設定用於不相符的路由金鑰或用來指定代理模型,將訊息現狀傳遞至執行路由並處理請求的後端元件。
- 路由請求
-
API Gateway 中 WebSocket API 方法的公有界面,其定義的本文必須在應用程式開發人員的請求中傳送,藉以透過 API 存取後端。
- 路由回應
-
WebSocket API 的公有界面,其定義的狀態碼、標頭和本文模型應為應用程式開發人員預期自 API Gateway 接收的內容。
- 用量計畫
-
用量計劃提供所選的 API 用戶端,可存取一個或多個已部署 REST 或 WebSocket API。您可以使用用量計畫設定調節和配額限制,這些是針對個別用戶端 API 金鑰所強制執行。
- WebSocket 連線
-
API Gateway 會持續維持用戶端和 API Gateway 本身之間的連線。與 API Gateway 和後端整合 (例如 Lambda 函數) 之間沒有持續連線。根據從用戶端接收的郵件內容,視需要呼叫後端服務。