You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在AWS SDK 2.0中查找Lambda相关的类型定义?

AWS Lambda v2 SDK 中事件与授权相关类型定义的查找方法

很多AWS Lambda示例还在用旧版v1 SDK(包含在aws-lambda包),新版v2 SDK则放在npm的@aws-sdk命名空间下,拆分成了多个小包。但要注意:Lambda的事件、授权请求这类类型定义,并不在@aws-sdk的包里面。

核心结论:类型定义在@types/aws-lambda包中

不管是v1还是v2 SDK,Lambda相关的事件(比如EventBridge事件)、授权器的输入输出类型(比如APIGatewayTokenAuthorizerEvent、APIGatewayAuthorizerResult),都统一放在@types/aws-lambda这个TypeScript类型定义包中——这是社区维护的专用包,专门覆盖Lambda的各种事件结构。

具体操作步骤

  1. 安装类型包:
npm install --save-dev @types/aws-lambda
  1. 在代码中直接导入使用:
import { APIGatewayTokenAuthorizerEvent, APIGatewayAuthorizerResult } from '@types/aws-lambda';

export const handler = async (event: APIGatewayTokenAuthorizerEvent): Promise<APIGatewayAuthorizerResult> => {
  // 你的授权逻辑实现
  return {
    principalId: 'user123',
    policyDocument: {
      Version: '2012-10-17',
      Statement: [
        {
          Action: 'execute-api:Invoke',
          Effect: 'Allow',
          Resource: '*'
        }
      ]
    }
  };
};

EventBridge事件类型的导入和使用示例:

import { EventBridgeEvent } from '@types/aws-lambda';

export const handler = async (event: EventBridgeEvent<string, any>) => {
  // 处理EventBridge事件的逻辑
};

查找类型的最佳方式

  • IDE智能提示:安装包后,在VS Code等IDE中输入相关关键词(比如APIGateway、EventBridge),就能自动弹出对应的类型选项,直接选择即可。
  • 查看类型源文件:打开node_modules/@types/aws-lambda/index.d.ts,搜索目标类型名称,就能看到完整的结构定义。
  • 对照官方文档:官方文档里的事件负载结构,和类型包中的定义一一对应,比如API网关授权器的负载结构,完全匹配APIGatewayTokenAuthorizerEvent的类型定义。

内容的提问来源于stack exchange,提问作者John Goofy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 15:30:06