開始使用 REST API 主控台
在此入門練習中,您會使用 API Gateway REST API 主控台建立無伺服器 REST API。無伺服器 API 讓您能夠專注於應用程式,而不必花時間佈建和管理伺服器。此練習過程不到 20 分鐘即可完成,而且可以包含在 AWS 免費方案
首先,使用 Lambda 主控台建立 Lambda 函數。接著,使用 API Gateway REST API 主控台建立 REST API。然後,建立 API 方法,並使用 Lambda 代理整合將它與 Lambda 函數整合。最後,部署和調用 API。
在您調用 REST API 時,API Gateway 會將請求路由至您的 Lambda 函數。Lambda 會執行函數,並傳回 API Gateway 的回應。API Gateway 隨後將該回應傳回給您。

若要完成此練習,您需有 AWS 帳戶,以及具有主控台存取權的 AWS Identity and Access Management (IAM) 使用者。如需詳細資訊,請參閱 設定為使用 API Gateway。
步驟 1:建立 Lambda 函數
您將使用 Lambda 函數作為您的 API 的後端。Lambda 只有在需要時才會執行程式碼,可自動從每天數項請求擴展成每秒數千項請求。
在本練習中,您將使用 Lambda 主控台中的預設 Node.js 函數。
建立 Lambda 函數
在以下網址登入 Lambda 主控台:https://console.aws.amazon.com/lambda
。 -
選擇 Create function (建立函數)。
-
在 Basic information (基本資訊) 下,為 Function name (函數名稱) 輸入
my-function
。 其他所有選項請使用預設設定。
-
選擇 Create function (建立函數)。
預設 Lambda 函數程式碼看起來與下面所示類似:
export const handler = async (event) => { const response = { statusCode: 200, body: JSON.stringify('The API Gateway REST API console is great!'), }; return response; };
您可以修改您的 Lambda 函數來進行本練習,只要函數的回應與 API Gateway 要求的格式相符即可。
將預設回應內文 (Hello from Lambda!
) 取代為 The API Gateway REST API
console is great!
。當您調用範例函數時,它會將 200
回應傳回至用戶端,並且包含更新的回應。
步驟 2:建立 REST API
接下來,您要建立具有根資源 (/
) 的 REST API。
若要建立 REST API
在以下網址登入 API Gateway 主控台:https://console.aws.amazon.com/apigateway
。 -
請執行下列其中一項:
-
若要建立您的第一個 API,請針對 REST API 選擇建置。
-
如果您之前已建立 API,則選擇建立 API,然後針對 REST API 選擇建置。
-
-
對於API 名稱,輸入
my-rest-api
。 在描述,請輸入描述。
將 API 端點類型保持設定為區域。
選擇建立 API。
步驟 3:建立 Lambda 代理整合
接下來,您要在根資源 (/
) 上為 REST API 建立 API 方法,並使用代理整合將此方法與您的 Lambda 函數整合。在 Lambda 代理整合中,API Gateway 會將來自用戶端的傳入請求直接傳遞至 Lambda 函數。
若要建立 Lambda 代理整合
-
選取
/
資源,然後選擇建立方法。 -
針對方法類型,選取
ANY
。 -
針對整合類型,選取 Lambda。
-
開啟 Lambda 代理整合。
-
針對 Lambda 函數,輸入
my-function
,然後選取您的 Lambda 函數。 -
選擇建立方法。
步驟 4:部署 API
接下來,您要建立 API 部署,並將它與階段建立關聯。
部署 API
選擇部署 API。
針對階段,選取新階段。
針對階段名稱,輸入
Prod
。在描述,請輸入描述。
選擇部署。
現在,用戶端可以呼叫您的 API。若要在部署 API 之前先行測試,您可以選擇性地選擇 ANY 方法,導覽至測試索引標籤,然後選擇測試。
步驟 5:調用 API
若要調用您的 API
-
從主導覽窗格選擇階段。
-
在階段詳細資訊下,選擇複製圖示以複製 API 的調用 URL。
-
在 Web 瀏覽器中輸入調用 URL。
完整 URL 看起來應該會像這樣:
https://
。abcd123
.execute-api.us-east-2
.amazonaws.com/Prod您的瀏覽器將向 API 傳送
GET
請求。 -
驗證您的 API 的回應。您應該會在瀏覽器中看到文字
"The API Gateway REST API console is great!"
。
(選用) 步驟 6:清理
為避免對您的 AWS 帳戶 累積不必要的成本,請刪除您在此練習中建立的資源。下列步驟可刪除您的 REST API、Lambda 函數和關聯的資源。
若要刪除 REST API
-
在資源窗格中,選擇 API 動作、刪除 API。
-
在刪除 API 對話方塊中,輸入確認,然後選擇刪除。
若要刪除 Lambda 函數
在以下網址登入 Lambda 主控台:https://console.aws.amazon.com/lambda
。 -
在函數頁面上,選取您的函數。選擇 動作、刪除。
-
在刪除 1 函數對話方塊中輸入
delete
,然後選擇刪除。
若要刪除 Lambda 函數的日誌群組
-
開啟 Amazon CloudWatch 主控台的 Log groups
(記錄群組) 頁面。 -
在日誌群組頁面上,選取函數的日誌群組 (
/aws/lambda/my-function
)。然後針對動作,選擇刪除日誌群組。 -
在 刪除日誌群組 對話方塊中,選擇 刪除 。
若要刪除 Lambda 函數的執行角色
-
開啟 IAM 主控台中的 角色頁面
。 -
(選用) 在角色頁面的搜尋方塊中,輸入
my-function
。 -
選取函數的角色 (例如
my-function-
),然後選擇刪除。31exxmpl
-
在要刪除
my-function-
嗎?對話方塊中,輸入角色的名稱,然後選擇刪除。31exxmpl
提示
您可以使用 AWS CloudFormation 或 AWS Serverless Application Model (AWS SAM),將 AWS 資源的建立和清理作業自動化。如需一些範例 AWS CloudFormation 範本,請參閱 awsdocs GitHub 儲存庫中的API Gateway 的範例範本