本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 AWS Lambda 函数
AWS Toolkit for Visual Studio Code 允许您在本地 VS Code 环境中使用您的 AWS Lambda 函数。使用该 AWS 工具包,您无需离开 IDE 即可创建、编辑、测试、调试和部署您的 Lambda 函数。有关该 AWS Lambda 服务的详细信息,请参阅《AWS Lambda开发人员指南》。
以下各节介绍如何开始使用中的 Lambda 函数。 AWS Toolkit for Visual Studio Code
注意
如果您已经使用创建了 Lambda 函数 AWS Management Console,则可以从工具包中调用它们。此外,您可以从在 VS Code 中打开 Lambda 函数 AWS Lambda console,有关更多信息,请参阅本用户指南中的 “AWS Lambda console 到 IDE” 主题。要在 VS Code 中创建新的 Lambda 函数,请按照本用户指南中创建新的无服务器应用程序(本地)主题中概述的步骤进行操作。
先决条件
必须满足以下条件才能使用 AWS 工具包中的 AWS Lambda 服务。
-
已安装最新版本 AWS Toolkit for Visual Studio Code 的,并使用您的 AWS 凭据进行设置。
您的 AWS Identity and Access Management (IAM) 托管权限和策略已配置为与该 AWS Lambda 服务配合使用。有关如何配置权限和创建兼容的 AWS 托管策略的详细信息,请参阅《AWS Identity and Access ManagementAWS Lambda 开发人员指南》中的 AWS Lambda主题。
-
您已有 AWS Lambda 函数或熟悉如何创建函数。有关如何创建 Lambda 函数的说明,请参阅开发者指南中的创建您的第一个 Lambda 函数主题。AWS Lambda
调用 Lambda 函数
要从您的 AWS 账户在 VS Code 中调用 Lambda 函数,请完成以下步骤。
从中 AWS Toolkit for Visual Studio Code,展开 AWS 浏览器。
在 AWS 资源管理器中,展开 Lambda 以查看您的 Lambda 资源。
打开(右键单击)要调用的 Lambda 函数的上下文菜单,然后选择在云中调用或选择在云中调用图标以在 VS C ode 中打开远程调用配置菜单。
在远程调用配置菜单中,指定您的负载设置并添加事件所需的任何其他信息。
注意
在 AWS 资源管理器中选择 “云端调用” 后,第一个调用进程可能会立即开始运行。输出显示在 VS Code 终端的输出选项卡中。
-
选择 “远程调用” 按钮来调用您的函数,输出将显示在 VS Code 终端的 OUTPUT 选项卡中。
删除 Lambda 函数
要删除 Lambda 函数,请完成以下步骤。
警告
请勿使用此过程删除与 AWS CloudFormation 关联的 Lambda 函数。这些函数必须通过 AWS CloudFormation 堆栈删除。
从中 AWS Toolkit for Visual Studio Code,展开 AWS 浏览器。
在 AWS 资源管理器中,展开 Lambda 以查看您的 Lambda 资源。
右键单击要删除的 Lambda 函数,然后选择删除。
出现提示时,确认您要删除您的函数。
删除该函数后,它将不再在 AWS 资源管理器中列出。
下载 Lambda 函数
您可以将远程 Lambda 函数中的代码下载到您的 VS Code 工作空间中进行编辑和调试。
注意
要下载你的 Lambda 函数,你必须在带有可访问文件夹的 VS Code 工作区中工作,而且该 AWS 工具包仅支持使用 Node.js 和 Python 运行时的 Lambda 函数的此功能。
从中 AWS Toolkit for Visual Studio Code,展开 AWS 浏览器。
在 AWS 资源管理器中,展开 Lambda 以查看您的 Lambda 资源。
右键单击要下载的 Lambda 函数,然后选择下载。
您的 Lambda 函数将在 VS Code 编辑器中打开,并在下载完成后显示在 AWS 资源管理器中。该 AWS 工具包还在 VS Code 运行面板中创建启动配置,允许您使用在本地运行和调试 Lambda 函数。 AWS Serverless Application Model有关使用的更多信息 AWS SAM,请参阅从模板(本地)运行和调试无服务器应用程序。
为新 Lambda 函数部署更新
您可以从本地计算机上未指定的临时位置部署新 Lambda 函数的更新。
注意
当您的 lambda 文件有未部署的更改时,VS Code 编辑器和资源管理器中修改后的文件旁边的 M 图标会通知您。 AWS
从 VS 代码编辑器部署
在 VS Code 编辑器中打开您的 Lambda 函数中的文件,然后对该文件进行更改。
从 VS Code 主菜单中手动保存或按
option+s
(Mac)ctrl+s
(Windows)。VS Code 会自动提示您将更改部署到云端,选择 “部署” 按钮以确认部署。
VS Code 会更新您的部署状态,并在该过程完成时通知您。
从 AWS 资源管理器部署
在 VS Code 编辑器中打开您的 Lambda 函数中的文件,然后对该文件进行更改。
在 AWS 工具包中,展开 AWS 资源管理器。
在 AWS 资源管理器中,使用要为其部署更改的 Lambda 函数扩展 AWS 区域。
从该 AWS 区域展开 Lambda,然后浏览要为其部署更改的函数。
从函数旁边的快捷菜单中,选择保存并部署您的代码图标。
VS Code 会更新您的部署状态,并在该过程完成时通知您。
上传现有 Lambda 函数的更新
以下过程介绍如何上传对现有 Lambda 函数所做的本地更改。此功能支持使用任何 Lambda 支持的运行时进行上传。
警告
在上传 lambda 函数之前,请注意以下几点:
以这种方式更新代码不会使用 AWS SAM CLI 进行部署或创建 AWS CloudFormation 堆栈
该 AWS 工具包不验证代码。在将任何更改上传到云端之前,请验证您的代码并测试您的函数。
上传 Zip 档案
从中 AWS Toolkit for Visual Studio Code,展开 AWS 浏览器。
在 AWS 资源管理器中,展开 Lambda 以查看您的 Lambda 资源。
右键单击要将更改上传到的 Lambda 函数,然后选择上传 Lambda... 打开 “选择上传类型” 菜单。
选择 ZIP 存档可在本地目录
ZIP Archive
中找到。-
出现提示时,确认上传以开始上传所选内容
ZIP Archive
。 您的上传状态显示在 VS Code 中,当上传过程完成时,您会收到通知。
上传目录而不进行构建
从中 AWS Toolkit for Visual Studio Code,展开 AWS 浏览器。
在 AWS 资源管理器中,展开 Lambda 以查看您的 Lambda 资源。
右键单击要将更改上传到的 Lambda 函数,然后选择上传 Lambda... 打开 “选择上传类型” 菜单。
选择目录进入生成目录屏幕。
在 “生成目录” 屏幕中,选择 “否” 以选择要上传的本地目录。
-
出现提示时,确认上传以上传所选目录。
您的上传状态显示在 VS Code 中,当上传过程完成时,您会收到通知。
上传包含版本的目录
注意
请注意以下事项:
此过程需要 AWS Serverless Application Model CLI。
AWS Toolkit 会在上传之前通知您无法检测到匹配的处理程序。
要更改附加到 Lambda 函数的处理程序,请使用 AWS Lambda console 或。 AWS Command Line Interface
从中 AWS Toolkit for Visual Studio Code,展开 AWS 浏览器。
在 AWS 资源管理器中,展开 Lambda 以查看您的 Lambda 资源。
右键单击要将更改上传到的 Lambda 函数,然后选择上传 Lambda... 打开 “选择上传类型” 菜单。
选择目录进入生成目录屏幕。
在 “生成目录” 屏幕中,选择 “是”,然后选择要上传的本地目录。
-
出现提示时,确认上传以开始构建和上传所选目录。
您的上传状态显示在 VS Code 中,当上传过程完成时,您会收到通知。
将您的 Lambda 函数转换为项目 AWS SAM
要将您的 Lambda 函数转换为 AWS SAM 堆栈,请完成以下步骤。
警告
当前,将 Lambda 函数转换为项目时,仅支持部分资源。 AWS SAM 要在转换后找到任何缺失的资源,请查看 Lambda 控制台并将其手动添加到您的 AWS SAM 模板中。有关支持和不支持的资源的更多详细信息,请参阅《AWS CloudFormation 开发人员指南》中的资源类型支持主题。
在 AWS 工具包中,展开 AWS 资源管理器。
在 AWS 资源管理器中,使用要转换为项目的 Lambda 函数扩展 AWS 区域。 AWS SAM
AWS 在该区域中,展开 Lambda,然后浏览要转换为堆栈的函数。 AWS SAM
从 Lambda 函数旁边的快捷菜单中,选择转换为 SAM 应用程序图标以浏览您的本地文件系统并为新 AWS SAM 项目指定位置。
指定位置后, AWS 工具包开始将您的 Lambda 函数转换为 AWS SAM 项目,VS Code 会提供有关流程状态的更新。
注意
此过程可能需要几分钟时间。
当 VS Code 提示时,输入堆栈名称,然后按
Enter
键继续。VS Code 会继续更新您的项目状态,然后在流程完成时通知您,并将您的新 AWS SAM 项目作为 VS Code 工作区打开。