開始使用 REST API 主控台 - Amazon API Gateway

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

開始使用 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 隨後將該回應傳回給您。

您在本教學課程中建立的 REST API 概觀。

若要完成此練習,您需要具有主控台存取權的 AWS 帳戶 和 AWS Identity and Access Management (IAM) 使用者。如需詳細資訊,請參閱 開始使用 API Gateway 的必要條件

步驟 1:建立 Lambda 函數

您將使用 Lambda 函數作為您的 API 的後端。Lambda 只有在需要時才會執行程式碼,可自動從每天數項請求擴展成每秒數千項請求。

在本練習中,您將使用 Lambda 主控台中的預設 Node.js 函數。

建立 Lambda 函式
  1. 在以下網址登入 Lambda 主控台:https://console.aws.amazon.com/lambda

  2. 選擇 Create function (建立函數)。

  3. Basic information (基本資訊) 下,為 Function name (函數名稱) 輸入 my-function

  4. 選擇建立函數

預設 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
  1. 在以下網址登入 API Gateway 主控台:https://console.aws.amazon.com/apigateway

  2. 執行以下任意一項:

    • 若要建立您的第一個 API,請針對 REST API 選擇建置

    • 如果您之前已建立 API,則選擇建立 API,然後針對 REST API 選擇建置

  3. 對於API 名稱,輸入 my-rest-api

  4. 描述,請輸入描述。

  5. API 端點類型保持設定為區域

  6. 選擇建立 API

步驟 3:建立 Lambda 代理整合

接下來,您要在根資源 (/) 上為 REST API 建立 API 方法,並使用代理整合將此方法與您的 Lambda 函數整合。在 Lambda 代理整合中,API Gateway 會將來自用戶端的傳入請求直接傳遞至 Lambda 函數。

若要建立 Lambda 代理整合
  1. 選取 / 資源,然後選擇建立方法

  2. 針對方法類型,選取 ANY

  3. 針對整合類型,選取 Lambda

  4. 開啟 Lambda 代理整合

  5. 針對 Lambda 函數,輸入 my-function,然後選取您的 Lambda 函數。

  6. 選擇建立方法

步驟 4:部署 API

接下來,您要建立 API 部署,並將它與階段建立關聯。

部署 API
  1. 選擇部署 API

  2. 針對階段,選取新階段

  3. 針對階段名稱,輸入 Prod

  4. 描述,請輸入描述。

  5. 選擇部署

現在,用戶端可以呼叫您的 API。若要在部署 API 之前先行測試,您可以選擇性地選擇 ANY 方法,導覽至測試索引標籤,然後選擇測試

步驟 5:調用 API

若要調用您的 API
  1. 從主導覽窗格選擇階段

  2. 階段詳細資訊下,選擇複製圖示以複製 API 的調用 URL。

    在建立 REST API 之後,主控台會顯示 API 的調用 URL。
  3. 在 Web 瀏覽器中輸入調用 URL。

    完整 URL 看起來應該會像這樣:https://abcd123.execute-api.us-east-2.amazonaws.com/Prod

    您的瀏覽器將向 API 傳送 GET 請求。

  4. 驗證您的 API 的回應。您應該會在瀏覽器中看到文字 "The API Gateway REST API console is great!"

(選用) 步驟 6:清除

若要避免產生不必要的成本 AWS 帳戶,請刪除您在本練習中建立的資源。下列步驟可刪除您的 REST API、Lambda 函數和關聯的資源。

若要刪除 REST API
  1. 資源窗格中,選擇 API 動作刪除 API

  2. 刪除 API 對話方塊中,輸入確認,然後選擇刪除

若要刪除 Lambda 函數
  1. 在以下網址登入 Lambda 主控台:https://console.aws.amazon.com/lambda

  2. 函數頁面上,選取您的函數。選擇 動作刪除

  3. 刪除 1 函數對話方塊中輸入 delete,然後選擇刪除

若要刪除 Lambda 函數的日誌群組
  1. 開啟 Amazon CloudWatch 主控台的日誌群組頁面

  2. 日誌群組頁面上,選取函數的日誌群組 (/aws/lambda/my-function)。然後針對動作,選擇刪除日誌群組

  3. 刪除日誌群組 對話方塊中,選擇 刪除

若要刪除 Lambda 函數的執行角色
  1. 開啟 IAM 主控台中的 角色頁面

  2. (選用) 在角色頁面的搜尋方塊中,輸入 my-function

  3. 選取函數的角色 (例如 my-function-31exxmpl),然後選擇刪除

  4. 要刪除 my-function-31exxmpl 嗎?對話方塊中,輸入角色的名稱,然後選擇刪除

提示

您可以使用 AWS CloudFormation or AWS Serverless Application Model (AWS SAM) 來自動建立和清理 AWS 資源。有關某些示例 AWS CloudFormation 模板,請參閱 awsdocs GitHub 存儲庫中 API Gateway 的示例模板。