实战演练:用 AWS Lambda 和 API Gateway 构建你的第一个 Serverless API

发布于:2025-05-12 ⋅ 阅读:(26) ⋅ 点赞:(0)

实战演练:用 AWS Lambda 和 API Gateway 构建你的第一个 Serverless API


理论千遍,不如动手一遍!在前面几篇文章中,我们了解了 Serverless 的概念、FaaS 的核心原理以及 BaaS 的重要作用。现在,是时候把这些知识运用起来,亲手构建一个简单但完整的 Serverless 应用了。

本次实战,我们将使用 Amazon Web Services (AWS) 这个主流的云平台,结合它的两个核心 Serverless 服务:

  • AWS Lambda (FaaS): 运行我们的后端代码。
  • AWS API Gateway (BaaS): 创建一个公开的 HTTP 接口,接收请求并触发 Lambda 函数。

目标: 创建一个简单的 HTTP GET API 端点,当用户访问这个端点时,它会返回一个 JSON 消息:“Hello from Lambda!”。

听起来很简单?没错!但这将让你体验到 Serverless 开发的核心流程。

准备工作

在开始之前,请确保你已准备好:

  1. 一个 AWS 账户: 如果没有,可以访问 AWS 官网 免费注册一个。新用户通常有一年的免费套餐额度,足够我们本次实验使用。
  2. 登录 AWS 管理控制台: 我们将主要通过 AWS 的网页界面来完成操作,对新手更友好。
  3. (可选) Node.js 环境: 我们将使用 Node.js 编写 Lambda 函数代码。虽然可以直接在 AWS 控制台编辑,但如果你想在本地编写和测试,需要安装 Node.js (LTS 版本即可)。

准备好了吗?我们开始吧!

第一步:创建 Lambda 函数

我们的“大脑”——处理请求的代码,将放在 Lambda 函数中。

  1. 登录 AWS 管理控制台。
  2. 在顶部的搜索栏中输入 Lambda,然后点击进入 Lambda 服务页面。
  3. 点击 “创建函数” (Create function) 按钮。
  4. 选择 “从头开始创作” (Author from scratch)
  5. 基本信息配置:
    • 函数名称 (Function name): 输入一个有意义的名称,例如 myHelloFunction
    • 运行时 (Runtime): 选择一个较新的 Node.js LTS 版本,例如 Node.js 18.xNode.js 20.x
    • 架构 (Architecture): 保持默认的 x86_64 即可。
    • 权限 (Permissions): 展开 “更改默认执行角色” (Change default execution role)。选择 “创建具有基本 Lambda 权限的新角色” (Create a new role with basic Lambda permissions)。这将自动创建一个允许函数将日志写入 AWS CloudWatch 的角色,方便后续排查问题。
  6. 点击 “创建函数” (Create function)。等待函数创建完成。

编写函数代码:

  1. 函数创建成功后,向下滚动到 “代码源” (Code source) 部分。

  2. 你会看到一个默认的 index.mjsindex.js 文件。将其中的全部内容替换为以下 Node.js 代码:

    // 使用 async/await 语法定义 handler
    export const handler = async 

网站公告

今日签到

点亮在社区的每一天
去签到