

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

# 什麼是 Amazon API Gateway？
<a name="welcome"></a>

Amazon API Gateway 是一項 AWS 服務，用於建立、發佈、維護、監控和保護任何規模的 REST、HTTP 和 WebSocket APIs。API 開發人員可以建立 APIs 來存取 AWS 或其他 Web 服務，以及存放在 [AWS 雲端](https://aws.amazon.com/what-is-cloud-computing/)的資料。身為 API Gateway API 開發人員，您也可以建立要在自己用戶端應用程式中使用的 API。或者，您可以讓 API 供第三方應用程式開發人員使用。如需更多詳細資訊，請參閱 [誰使用 API Gateway？](api-gateway-overview-developer-experience.md#apigateway-who-uses-api-gateway)。

API Gateway 所建立的 RESTful API 會：
+ 以 HTTP 為基礎。
+ 啟用無狀態的用戶端伺服器通訊。
+ 實作標準 HTTP 方法，例如 GET、POST、PUT、PATCH 和 DELETE。

如需 API Gateway REST API 和 HTTP API 的詳細資訊，請參閱[在 REST API 與 HTTP API 之間選擇](http-api-vs-rest.md)、[API Gateway HTTP API](http-api.md)、[使用 API Gateway 建立 REST API](api-gateway-overview-developer-experience.md#api-gateway-overview-rest)，以及[在 APIs Gateway 中開發 REST API](rest-api-develop.md)。

API Gateway 所建立的 WebSocket API 會：
+ 遵循 [WebSocket](https://datatracker.ietf.org/doc/html/rfc6455) 通訊協定，在用戶端與伺服器之間啟用狀態、全雙工通訊。
+ 根據訊息內容路由傳入的訊息。

如需 API Gateway WebSocket API 的詳細資訊，請參閱[使用 API Gateway 來建立 WebSocket API](api-gateway-overview-developer-experience.md#api-gateway-overview-websocket) 和[API Gateway 中的 WebSocket API 概觀](apigateway-websocket-api-overview.md)。

**Topics**
+ [API Gateway 架構](#api-gateway-overview-aws-backbone)
+ [API Gateway 的功能](#api-gateway-overview-features)
+ [API Gateway 使用案例](api-gateway-overview-developer-experience.md)
+ [存取 API Gateway](#introduction-accessing-apigateway)
+ [無 AWS 伺服器基礎設施的一部分](#api-gateway-overview-a-serverless-pillar)
+ [如何開始使用 Amazon API Gateway](#welcome-how-to-get-started)
+ [Amazon API Gateway 概念](api-gateway-basic-concept.md)
+ [在 REST API 與 HTTP API 之間選擇](http-api-vs-rest.md)
+ [開始使用 REST API 主控台](getting-started-rest-new-console.md)

## API Gateway 架構
<a name="api-gateway-overview-aws-backbone"></a>

下圖顯示的是 API Gateway 架構。

![\[API Gateway 架構圖表\]](http://docs.aws.amazon.com/zh_tw/apigateway/latest/developerguide/images/Product-Page-Diagram_Amazon-API-Gateway-How-Works.png)


此圖表旨在說明您在 Amazon API Gateway 中建置的 API 如何讓您或開發人員客戶在建置 AWS 無伺服器應用程式時，享有整合且一致的開發人員體驗。API Gateway 負責處理有關接受和處理多達數十萬個並行 API 呼叫的所有任務，這些任務包括流量管理、授權和存取控制、監控和 API 版本管理。

API Gateway 可做為應用程式從後端服務存取資料、商業邏輯或功能的「前門」，例如在 Amazon Elastic Compute Cloud (Amazon EC2) 上執行的工作負載 AWS Lambda、在 上執行的程式碼、任何 Web 應用程式或即時通訊應用程式。

## API Gateway 的功能
<a name="api-gateway-overview-features"></a>

Amazon API Gateway 提供如下功能：
+ 支援狀態 ([WebSocket](apigateway-websocket-api.md)) 和無狀態 ([HTTP](http-api.md) 及 [REST](apigateway-rest-api.md)) API。
+ 強大且靈活的[身分驗證](apigateway-control-access-to-api.md)機制，例如 AWS Identity and Access Management 政策、Lambda 授權方函數和 Amazon Cognito 使用者集區。
+ [Canary 發行部署](canary-release.md)，可讓您安全地進行變更。
+ 記錄和監控 API 使用情況與 API 變更的 [CloudTrail](cloudtrail.md)。
+ CloudWatch 存取記錄和執行記錄，包括設定警示的功能。如需詳細資訊，請參閱[使用 Amazon CloudWatch 指標監控 REST API 執行](monitoring-cloudwatch.md)及[使用 CloudWatch 指標監控 WebSocket API 執行](apigateway-websocket-api-logging.md)。
+ 能夠使用 CloudFormation 範本來啟用 API 建立。如需詳細資訊，請參閱 [Amazon API Gateway 資源類型參考](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_ApiGateway.html)和 [Amazon API Gateway V2 資源類型參考](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_ApiGatewayV2.html)。
+ 支援[自訂網域名稱](how-to-custom-domains.md)。
+ 與 [AWS WAF](apigateway-control-access-aws-waf.md) 的整合，用於保護 API 避免受到常見的網路攻擊。
+ 與 [AWS X-Ray](apigateway-xray.md) 的整合，用於了解和分類效能延遲。

如需 API Gateway 功能發布的完整清單，請參閱[文件歷史記錄](history.md)。

## 存取 API Gateway
<a name="introduction-accessing-apigateway"></a>

您可以通過以下方式存取 Amazon API Gateway：
+ **AWS 管理主控台** – AWS 管理主控台 提供用於建立和管理 APIs Web 界面。完成[設定為使用 API Gateway](setting-up.md)中的步驟後，您可以前往 [https://console.aws.amazon.com/apigateway](https://console.aws.amazon.com/apigateway) 存取 API Gateway 主控台。
+ **AWS SDKs** – 如果您使用的是 AWS 提供 開發套件的程式設計語言，您可以使用 開發套件來存取 API Gateway。軟體開發套件可簡化身分驗證、與開發環境輕鬆整合，並讓您存取 API Gateway 命令。如需詳細資訊，請參閱 [Amazon Web Services 適用工具](https://aws.amazon.com/developer/tools/)。
+ **API Gateway V1 和 V2 API** – 如果您使用的是沒有適用軟體開發套件的程式設計語言，請參閱 [Amazon API Gateway 第 1 版 API 參考](https://docs.aws.amazon.com/apigateway/latest/api/API_Operations.html)和 [Amazon API Gateway 第 2 版 API 參考](https://docs.aws.amazon.com/apigatewayv2/latest/api-reference/api-reference.html)。
+ **AWS Command Line Interface** – 如需詳細資訊，請參閱 *AWS Command Line Interface 使用者指南*中的[使用 AWS Command Line Interface完成設定](https://docs.aws.amazon.com/cli/latest/userguide/)。
+ **AWS Tools for Windows PowerShell** – 如需詳細資訊，請參閱 * AWS Tools for Windows PowerShell使用者指南*中的[設定AWS Tools for PowerShell](https://docs.aws.amazon.com/powershell/latest/userguide/)。

## 無 AWS 伺服器基礎設施的一部分
<a name="api-gateway-overview-a-serverless-pillar"></a>

[AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/)API Gateway 與 一起組成面向應用程式的無 AWS 伺服器基礎設施部分。若要深入了解如何開始使用無伺服器，請參閱《[無伺服器開發人員指南](https://docs.aws.amazon.com/serverless/latest/devguide/welcome.html)》。

若要讓應用程式呼叫公開可用的 AWS 服務，您可以使用 Lambda 與必要的服務互動，並透過 API Gateway 中的 API 方法公開 Lambda 函數。 會在高可用性的運算基礎設施上執行 AWS Lambda 您的程式碼。它會執行所需的運算資源執行和管理。為了啟用無伺服器應用程式，API Gateway 支援與 AWS Lambda 和 HTTP 端點[的簡化代理整合](api-gateway-set-up-simple-proxy.md)。

## 如何開始使用 Amazon API Gateway
<a name="welcome-how-to-get-started"></a>

如需 Amazon API Gateway 的簡介，請參閱下列內容：
+ [API Gateway 入門](getting-started.md)，提供用於建立 HTTP API 的演練。
+ [無伺服器登陸](https://serverlessland.com/video?tag=Amazon%20API%20Gateway)，提供教學影片。
+ [Happy Little API Shorts](https://www.youtube.com/playlist?list=PLJo-rJlep0EDFw7t0-IBHffVYKcPMDXHY) 是一系列簡短的教學影片。