我之前在我的 aws lambda 设置中使用了 node14.x 和 aws-sdk 版本 2。目前,我已在 serverless.yml 文件中将节点运行时更新为 node18.x。之后,我测试了代码库中的所有功能,一切都工作得很好。然后,当我移动到 aws-sdk 3 语法时,例如将
const { S3 } = require('aws-sdk')
移动到 const { S3 } = require('@aws-sdk/client-s3)
后,我遇到了找不到模块的问题。
节点版本 - 18.16.0
无服务器版本 - 2.59.0
我还尝试在 package.json 本身中添加 aws-sdk 所需的包。
如果您使用 Node.js 18x 或更高版本,则必须使用
import ___ from 'library_name'
格式。请参阅 AWS SDK V3 以获取正确的文档。