本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在本機開發 Lambda 函數
您可以將 Lambda 函數從 Lambda 主控台移至您偏好的整合開發環境 (IDE),該環境提供完整的開發環境,您可以在其中使用其他本機開發選項,例如 AWS SAM 和 AWS CDK。Lambda 主控台支援直接在 Visual Studio Code、Kiro 或 Cursor 中開啟函數。
本機開發的主要優勢
雖然 Lambda 主控台提供了一種快速編輯與測試函式的方式,但本機開發能帶來更進階的功能:
-
進階 IDE 功能:偵錯、程式碼自動完成與重構工具
-
離線開發:在部署至雲端前,先於本機進行程式碼開發與測試
-
基礎設施即程式碼整合:與 AWS SAM AWS CDK和 Infrastructure Composer 無縫使用
-
相依項管理:完全控制函式相依項
先決條件
在使用 Visual Studio Code、Kiro 和 Cursor 在本機開發 Lambda 函數之前,您必須使用以下指示進行安裝:
-
Visual Studio 程式碼:如需安裝說明,請參閱下載 Visual Studio 程式碼
。 -
Kiro:如需安裝說明,請參閱 Kiro 入門
。 -
游標:如需安裝說明,請參閱下載游標
。
您也需要下列項目:
-
AWS Toolkit for Visual Studio Code:如需 Visual Studio Code 安裝指示,請參閱設定 AWS Toolkit for Visual Studio Code。如需概觀,請參閱 AWS Toolkit for Visual Studio Code
。 -
AWS 登入資料:如需設定登入資料的相關資訊,請參閱設定您的 AWS 登入資料。
-
AWS SAM CLI:如需安裝說明,請參閱安裝 AWS SAM CLI。
-
已安裝 Docker (選用項,但在本機測試時為必要項):如需安裝說明,請參閱 Get Docker
。
注意
如果您已在本機設定 AWS 帳戶和設定檔,請確定 AdministratorAccess 受管政策已新增至您設定的 AWS 設定檔。
身分驗證與存取控制
若要在本機開發 Lambda 函數,您需要 AWS 登入資料來代表您安全地存取和管理 AWS 資源,就像在雲端一樣。
AWS Toolkit for Visual Studio Code 支援下列身分驗證方法:
-
IAM 使用者長期憑證
-
來自擔任角色的臨時憑證
-
聯合身分
-
AWS 帳戶根使用者登入資料 (不建議)
本節會引導您使用 IAM 使用者長期憑證,完成這些憑證的取得與設定流程。
取得 IAM 憑證
如果您已有具備存取金鑰的 IAM 使用者,請備妥存取金鑰 ID 與私密存取金鑰,供下一節使用。若無所述金鑰,請依照下列步驟建立金鑰:
注意
您必須一起使用存取金鑰 ID 和私密存取金鑰來驗證您的請求。
若要建立 IAM 使用者與存取金鑰:
-
前往 https://console.aws.amazon.com/iam/
開啟 IAM 主控台 -
在導覽窗格中,選擇使用者 。
-
選擇 Create user (建立使用者)。
-
在使用者名稱欄位中輸入名稱,然後選擇下一步。
-
在設定許可欄位中,選擇直接連接政策。
-
選取 AdministratorAccess,然後選擇下一步。
-
選擇 Create user (建立使用者)。
-
在成功橫幅中,選擇檢視使用者。
-
選擇 Create access key (建立新的存取金鑰)。
-
在使用案例欄位中,選擇本機程式碼。
-
選取確認核取方塊,然後選擇下一步。
-
(選用) 輸入描述標籤值。
-
選擇 Create access key (建立新的存取金鑰)。
-
立即複製您的存取金鑰和私密存取金鑰。一旦離開此頁面,您將無法再次存取該私密存取金鑰。
重要
切勿共用私密金鑰,亦勿將其提交至原始碼控制系統。請妥善儲存這些金鑰,並在不再需要時立即刪除。
注意
如需詳細資訊,請參閱《IAM 使用者指南》中的在 AWS 帳戶中建立 IAM 使用者和管理 IAM 使用者的存取金鑰。
使用 AWS Toolkit 設定 AWS 登入資料
下表摘要說明您在下列程序中完成的登入資料設定程序。
| 處理方式 | 為什麼? |
|---|---|
| 開啟「登入」面板 | 開始驗證 |
| 使用命令調色盤,搜尋 AWS 新增連線 | 存取登入 UI |
| 選擇「IAM 憑證」 | 使用存取金鑰以程式設計方式進行存取 |
| 輸入設定檔名稱、存取金鑰、私密金鑰 | 提供連線所需的憑證 |
| 請參閱 AWS Explorer 更新 | 確認連線已成功建立 |
完成下列步驟以向 AWS 您的帳戶進行身分驗證:
注意
下列步驟適用於 Visual Studio Code、Kiro 和 Cursor。由於 Kiro 和 Cursor 是以 Visual Studio Code 為基礎,因此所有三個 IDEs 的身分驗證流程都相同。
-
在 IDE 中開啟登入面板:
若要開始身分驗證程序,請選取左側導覽窗格中的 AWS 圖示,或開啟命令面板 (Mac 上的 Cmd+Shift+P 或 Windows/Linux 上的 Ctrl+Shift+P),然後搜尋並選取AWS 新增連線。
-
在「登入」面板中,選擇 IAM 憑證,然後選取繼續。
注意
若要繼續,您需要允許 AWS IDE 延伸存取您的資料。
-
輸入設定檔名稱、存取金鑰 ID 與私密存取金鑰,然後選取繼續。
-
檢查 IDE 中的 AWS Explorer 是否有 AWS 服務和資源,以驗證連線。
如需使用長期憑證設定身分驗證的資訊,請參閱使用長期憑證來驗證 AWS SDKs和工具。
如需有關設定身分驗證的資訊,請參閱 AWS Toolkit for Visual Studio Code 《 使用者指南》中的 AWS IAM 登入資料。
從主控台遷移至本機開發
注意
若您已在主控台進行變更,請在轉換至本機開發前,確認所有變更皆已部署完成。
若要將 Lambda 函數從 Lambda 主控台移至本機 IDE,請完成下列步驟:
-
開啟 Lambda 主控台
。 -
選擇 函數的名稱。
-
選取程式碼來源索引標籤。
-
選擇按鈕旁的下拉箭頭,在您選擇的 IDE 中開啟您的函數。支援的選項是在 Visual Studio Code 中開啟、在 Kiro 中開啟,以及在 Cursor 中開啟。
注意
您的 IDE 選擇會持續存在。選擇 IDE 後,後續造訪會顯示 IDE 做為主要按鈕。
-
出現提示時,允許您的瀏覽器開啟選取的 IDE。
當您在 IDE 中開啟函數時,Lambda 會在專為快速測試和部署而設計的暫時位置,使用函數程式碼建立本機專案。該專案包含函式程式碼、相依項以及可用於本機開發的基本專案結構。
注意
在 IDE 中開啟按鈕需要 AWS Toolkit 3.69.0 版或更新版本。如果您已安裝舊版的 AWS Toolkit,您可能會看到一Cannot open the handler則訊息。若要解決此問題,請將您的 AWS Toolkit 更新至最新版本。
如需在 IDE AWS 中使用 的詳細資訊,請參閱 AWS Toolkit for Visual Studio Code 使用者指南。
在本機使用函式
在偏好的 IDE 中開啟函數後,請依照下列步驟存取和管理函數。在以下範例中,我們使用 Visual Studio Code。
-
選取側邊欄中的 AWS 圖示以開啟 AWS Explorer:
-
在 AWS Explorer 中,選取具有 Lambda 函數的區域:
-
在所選的區域下,展開 Lambda 區段,即可檢視並管理函式:
在 IDE 中開啟 函數後,您可以:
-
使用完整的語言支援與程式碼自動完成功能來編輯函式程式碼。
-
使用 LocalStack 整合來測試在執行 AWS 服務 期間對其他 進行 API 呼叫的 Lambda 函數,例如從 DynamoDB 資料表讀取或寫入 Amazon S3 儲存貯體。LocalStack 是一種雲端服務模擬器,提供完整的本機開發環境來測試服務間的整合運作。您也可以使用 AWS SAM CLI 在本機容器中測試函式。如果您的函數對其他 發出 API 呼叫 AWS 服務,這些呼叫將到達實際 AWS 資源,而不是模擬資源。
-
透過中斷點與變數檢查功能進行函式偵錯。如需詳細資訊,請參閱 AWS Toolkit for Visual Studio Code User Guide 中的 Running and debugging Lambda functions directly from code。
-
AWS 使用雲端圖示將更新的函數部署回 。
-
安裝並管理函式的相依項。
將您的函數轉換為 AWS SAM 範本並使用 IaC 工具
在所有支援的 IDEs(Visual Studio Code、Kiro 和 Cursor) 中,您可以選擇 Lambda 函數旁的轉換為 AWS SAM 應用程式圖示,將 Lambda 函數轉換為 AWS SAM 範本。系統會提示您選取 AWS SAM 專案位置。選取後,您的 Lambda 函數會轉換為儲存在新 AWS SAM 專案中的template.yaml檔案。
將函數轉換為 AWS SAM 範本後,您可以:
對基礎結構進行版本控制
自動化部署流程
遠端偵錯函式
將其他 AWS 資源新增至您的應用程式
在整個開發生命週期中維護一致的環境
使用 Infrastructure Composer 以視覺化方式編輯您的 AWS SAM 範本
如需有關使用 IaC 工具的詳細資訊,請參閱下列指南:
這些工具提供其他定義、測試和部署無伺服器應用程式的功能。
後續步驟
若要進一步了解如何在 Visual Studio Code 中使用 Lambda 函數,請參閱下列資源:
-
《 AWS Toolkit for Visual Studio 程式碼使用者指南》中的使用 AWS Lambda 函數
-
《 AWS Toolkit for Visual Studio 程式碼使用者指南》中的使用無伺服器應用程式
-
《Lambda 開發人員指南》中的基礎結構即程式碼