PHP*_*Lol 8 amazon-web-services node.js aws-lambda aws-sdk-nodejs
我将 Lambda 函数从 node12.x 升级到了 node18.x
该代码在 12.x 上运行得很好,切换到 18.x 后,我无法再包含 AWS sdk:
我曾经通过简单地输入以下内容来包含它:
var AWS = require('aws-sdk');
Run Code Online (Sandbox Code Playgroud)
我现在收到这个错误
"Error: Cannot find module 'aws-sdk'
Run Code Online (Sandbox Code Playgroud)
我想如果我能让AWS sdk正确加载该功能应该没问题,有什么想法吗?
谢谢
fed*_*nev 16
Node.js 18 Lambda 运行时预加载了AWS SDK for JS v3。
早期的运行时具有SDK v2。
当然,您仍然可以将 SDK v2 与 Node.js 18 运行时结合使用。您只需使用 Lambda 代码将客户端打包为依赖项。
v2 SDK 的aws-sdk
包(预加载在 14.x、16.x Lambda Node.js 运行时)包含每个客户端。v3 服务客户端(在 18.x 上预加载)在单独的包中模块化@aws-sdk/client-[something]
。以下是用于获取 S3 对象的 v3 示例导入:
// v3
import { S3Client, GetObjectCommand } from "@aws-sdk/client-s3"
Run Code Online (Sandbox Code Playgroud)
请参阅SDK v3 文档中的入门指南。
在 lambda 的 package.json 文件中安装 aws-sdk。
npm install aws-sdk@2
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
16324 次 |
最近记录: |