使用 AWS Lambda 函数 - AWS 适用于 VS Code 的工具包

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 AWS Lambda 函数

AWS Toolkit for Visual Studio Code 允许您在本地 VS Code 环境中使用您的 AWS Lambda 函数。使用该 AWS 工具包,您无需离开 IDE 即可创建、编辑、测试、调试和部署您的 Lambda 函数。有关该 AWS Lambda 服务的详细信息,请参阅AWS Lambda开发人员指南。

以下各节介绍了如何开始在 AWS Toolkit for Visual Studio Code中使用 Lambda 函数。

注意

如果您已经使用创建了 Lambda 函数 AWS 管理控制台,则可以从工具包中调用它们。此外,您可以从在 VS Code 中打开 Lambda 函数 AWS Lambda console,有关更多信息,请参阅本用户AWS Lambda console 到 IDE指南中的主题。要在 VS Code 中创建新的 Lambda 函数,请按照本用户指南中创建新的无服务器应用程序(本地)主题中概述的步骤进行操作。

先决条件

必须满足以下条件才能使用 AWS 工具包中的 AWS Lambda 服务。

调用 Lambda 函数

要从您的 AWS 账户在 VS Code 中调用 Lambda 函数,请完成以下步骤。

  1. 从中 AWS Toolkit for Visual Studio Code,展开 AWS 浏览器。

  2. 在 AWS 资源管理器中,展开 Lambda 以查看您的 Lambda 资源。

  3. 打开要调用的 Lambda 函数的上下文菜单(右键单击),然后选择在云中调用或选择在云中调用图标以在 VS Code 中打开远程调用配置菜单。

  4. 远程调用配置菜单中,指定有效载荷设置并添加事件所需的任何其他信息。

    注意

    在 AWS 资源管理器中选择 “云端调用” 后,第一个调用进程可能会立即开始运行。输出将显示在 VS Code 终端的输出选项卡中。

  5. 选择远程调用按钮来调用函数。输出将显示在 VS Code 终端的输出选项卡中。

删除 Lambda 函数

要删除 Lambda 函数,请完成以下过程。

警告

请勿使用此过程删除与 CloudFormation 关联的 Lambda 函数。这些函数必须通过 CloudFormation 堆栈删除。

  1. 从中 AWS Toolkit for Visual Studio Code,展开 AWS 浏览器。

  2. 在 AWS 资源管理器中,展开 Lambda 以查看您的 Lambda 资源。

  3. 右键单击要删除的 Lambda 函数,然后选择删除

  4. 出现提示时,确认您要删除函数。

删除该函数后,它将不再在 AWS 资源管理器中列出。

下载 Lambda 函数

您可以将远程 Lambda 函数的代码下载到 VS Code 工作区中进行编辑和调试。

注意

要下载你的 Lambda 函数,你必须在带有可访问文件夹的 VS Code 工作区中工作,而且该 AWS 工具包仅支持使用 Node.js 和 Python 运行时的 Lambda 函数的此功能。

  1. 从中 AWS Toolkit for Visual Studio Code,展开 AWS 浏览器。

  2. 在 AWS 资源管理器中,展开 Lambda 以查看您的 Lambda 资源。

  3. 右键单击要下载的 Lambda 函数,然后选择下载

  4. 您的 Lambda 函数将在 VS Code 编辑器中打开,并在下载完成后显示在 AWS 资源管理器中。该 AWS 工具包还在 VS Code 运行面板中创建启动配置,允许您使用在本地运行和调试 Lambda 函数。 AWS Serverless Application Model有关使用的更多信息 AWS SAM,请参阅从模板(本地)运行和调试无服务器应用程序

为新的 Lambda 函数部署更新

您可以从本地计算机上未指定的临时位置部署新 Lambda 函数的更新。

注意

当您的 Lambda 文件有未部署的更改时,VS Code 编辑器和 AWS 各区服务浏览器中修改后的文件旁边的 M 图标会通知您。

通过 VS Code 编辑器部署
  1. 在 VS Code 编辑器中打开 Lambda 函数中的一个文件,然后对该文件进行更改。

  2. 从 VS Code 主菜单中手动保存或按 option+s(Mac)ctrl+s(Windows)。

  3. VS Code 会自动提示您将更改部署到云中,选择部署按钮以确认部署。

  4. VS Code 会实时更新部署状态,并在该过程完成时通知您。

从 AWS 资源管理器部署
  1. 在 VS Code 编辑器中打开 Lambda 函数中的一个文件,然后对该文件进行更改。

  2. 在 AWS 工具包中,展开 AWS 资源管理器。

  3. 在 AWS 资源管理器中,使用要为其部署更改的 Lambda 函数扩展 AWS 区域。

  4. 从该 AWS 区域展开 Lambda,然后浏览要为其部署更改的函数。

  5. 在函数旁边的快捷菜单中,选择保存并部署代码图标。

  6. VS Code 会实时更新部署状态,并在该过程完成时通知您。

上传现有 Lambda 函数的更新

以下过程说明了如何上传对现有 Lambda 函数所做的本地更改。此功能支持使用任何 Lambda 支持的运行时进行上传。

警告

在上传 Lambda 函数之前,请注意以下几点:

  • 以这种方式更新代码不会使用 AWS SAM CLI 进行部署或创建 CloudFormation 堆栈

  • 该 AWS 工具包不验证代码。在将任何更改上传到云中之前,请验证代码并测试函数。

上传 Zip 格式归档
  1. 从中 AWS Toolkit for Visual Studio Code,展开 AWS 浏览器。

  2. 在 AWS 资源管理器中,展开 Lambda 以查看您的 Lambda 资源。

  3. 右键单击要将更改上传到的 Lambda 函数,然后选择上传 Lambda... 以打开选择上传类型菜单。

  4. 选择 ZIP 归档,在本地目录中找到 ZIP Archive

  5. 出现提示时,确认上传以开始上传所选 ZIP Archive

  6. 上传状态显示在 VS Code 中,当上传过程完成时,系统会通知您。

上传不含构建的目录
  1. 从中 AWS Toolkit for Visual Studio Code,展开 AWS 浏览器。

  2. 在 AWS 资源管理器中,展开 Lambda 以查看您的 Lambda 资源。

  3. 右键单击要将更改上传到的 Lambda 函数,然后选择上传 Lambda... 以打开选择上传类型菜单。

  4. 选择目录以进入构建目录屏幕。

  5. 构建目录屏幕上,选择以选择要上传的本地目录。

  6. 出现提示时,确认上传以上传所选目录。

  7. 上传状态显示在 VS Code 中,当上传过程完成时,系统会通知您。

上传包含构建的目录
注意

请注意以下事项:

  • 此过程需要 AWS Serverless Application Model CLI。

  • AWS Toolkit 会在上传之前通知您无法检测到匹配的处理程序。

  • 要更改附加到 Lambda 函数的处理程序,请使用 AWS Lambda console 或。 AWS Command Line Interface

  1. 从中 AWS Toolkit for Visual Studio Code,展开 AWS 浏览器。

  2. 在 AWS 资源管理器中,展开 Lambda 以查看您的 Lambda 资源。

  3. 右键单击要将更改上传到的 Lambda 函数,然后选择上传 Lambda... 以打开选择上传类型菜单。

  4. 选择目录以进入构建目录屏幕。

  5. 构建目录屏幕上,选择,然后选择要上传的本地目录。

  6. 出现提示时,确认上传以开始构建和上传所选目录。

  7. 上传状态显示在 VS Code 中,当上传过程完成时,系统会通知您。

将您的 Lambda 函数转换为项目 AWS SAM

要将您的 Lambda 函数转换为 AWS SAM 堆栈,请完成以下步骤。

警告

目前,将 Lambda 函数转换为 AWS SAM 项目时,仅支持部分资源。要在转换后找到任何缺失的资源,请查看 Lambda 控制台并将其手动添加到您的 AWS SAM 模板中。有关支持和不支持的资源的更多详细信息,请参阅《AWS CloudFormation 开发人员指南》中的资源类型支持主题。

  1. 在 AWS 工具包中,展开 AWS 资源管理器。

  2. 在 AWS 资源管理器中,使用要转换为项目的 Lambda 函数扩展 AWS 区域。 AWS SAM

  3. AWS 在该区域中,展开 Lambda,然后浏览要转换为堆栈的函数。 AWS SAM

  4. 在 Lambda 函数旁边的快捷菜单中,选择转换为 SAM 应用程序图标以浏览您的本地文件系统并为新 AWS SAM 项目指定位置。

  5. 指定位置后, AWS 工具包开始将您的 Lambda 函数转换为 AWS SAM 项目,VS Code 会提供有关流程状态的更新。

    注意

    此过程可能需要几分钟时间。

  6. 当 VS Code 显示提示时,输入堆栈名称,然后按 Enter 键继续。

  7. VS Code 会继续更新您的项目状态,然后在流程完成时通知您,并将您的新 AWS SAM 项目作为 VS Code 工作区打开。