AWS Lambda 无服务器项目的 NodeJS 版本 14 和 15 之间的斗争

Đoà*_*Bảo 0 node.js aws-lambda

我的节点版本是16,但是当我开始创建AWS项目并部署它时,出现错误。

An error occurred: HelloLambdaFunction - Resource handler returned message: "Uploaded file must be a non-empty zip ) 
Run Code Online (Sandbox Code Playgroud)

解决方案是将我的节点版本降级到14(我在互联网上搜索),但只有高于15的节点版本才能支持我的另一个项目中的??=运算符。现在我很困惑。

请教我如何解决这个问题,感谢您的关注。

Jen*_*ens 6

我认为这里有些事情混淆了。

首先,默认的 AWS Lambda NodeJS 运行时仅支持 NodeJS v14,而不支持 v16。阅读官方运行时文档以获取更多信息。不过,您可以在使用 NodeJS 16.x 的情况下构建Docker 映像,但这是一个不同的主题。

其次,您会收到以下错误:

上传的文件必须是非空 zip

这表明问题并不是真正的 NodeJS 版本,而是由于某种原因您上传了一个空的 ZIP 存档。所以也许先检查一下。