使用 AWS Gateway 和 Node.js 構建 Rest API
AWS Gateway 是一個強大的工具,用于構建可擴展以滿足現代 Web 和移動應用程序需求的 API。借助 AWS Gateway,您可以創建 RESTful API,將您的數據和業務邏輯公開給開發人員,然后開發人員可以構建使用您的 API 的豐富的交互式應用程序。
REST API 是用于構建可擴展的分布式 Web 應用程序的行業標準。借助 AWS Gateway,您可以輕松構建支持 GET 和 POST 方法以及復雜查詢參數的 REST API。您還可以添加對其他 HTTP 方法的支持,例如 PUT、DELETE 和 HEAD。
使用 AWS Gateway,您可以快速創建安全可靠的 API。您還可以使用它輕松地將代碼部署到生產環境。此外,AWS Gateway 允許與其他 AWS 服務(例如 S3 和 DynamoDB)無縫集成,使您能夠輕松地向 API 添加復雜的功能。
先決條件
在使用 AWS Gateway 構建 RESTful API 之前,您應該準備好以下內容:
如果您還沒有AWS 賬戶,請創建一個。
登錄到 AWS 管理控制臺并導航到 Amazon API Gateway 服務。
亞馬遜 API 網關服務單擊“創建 API”并選擇“REST API”。
單擊“操作”并定義資源,然后單擊“創建資源”。
新的子資源
選擇新創建的資源并單擊“創建方法”。
創建方法
獲取設置
選擇 HTTP 動詞(例如,GET、POST、PUT 等)并單擊復選標記以創建方法。
在“集成類型”部分,選擇“Lambda 函數”并輸入要用于處理 API 請求的 Lambda 函數的名稱。單擊“保存”以創建 API。
AWS Lambda 函數
從運行時下拉列表中選擇節點。
選擇節點
代碼示例
該代碼首先創建一個名為 user 的對象,該對象包含 firstName、lastName 和 location 等屬性。
然后處理函數檢查HTTPMethod事件對象的屬性;如果是“GET”,它會調用該getUserRecord函數;如果是“POST”,它會調用 createUserRecord 函數。
getUserRecord 和 createUserRecord 函數都將事件對象作為輸入并返回響應對象。
在 getUserRecord 函數中,它創建一個 statusCode 為 200 的響應對象和一個包含 JSON 對象的主體,user_details該對象的屬性是在開始時創建的用戶對象。
在 createUserRecord 函數中,它首先將作為字符串的 event.body 解析為 JSON 對象,然后創建一個 statusCode 為 200 的響應對象和一個包含具有 message 和 details 屬性的 JSON 對象的正文。
通過單擊“操作”并選擇“部署 API”來部署 API。
部署API
選擇部署階段(例如,“prod”或“test”)并單擊“Deploy”。使用生成的 API 端點向您的 API 發出請求。
在 Postman 中運行和測試代碼
現在,我們的 API 已啟動并運行。您可以通過 Postman 發送測試 HTTP 請求。通過向調用 URL 發送請求,您應該會看到 200 OK 狀態代碼。對于此測試,傳入請求不需要請求正文。
總結
這樣,我們就使用 AWS Lambda 創建了一個簡單的 RESTful API。然后可以根據需要擴展此代碼,為您的應用程序構建 API。