【发布时间】:2021-03-02 13:59:31
【问题描述】:
我正在尝试使用层在 AWS Lambda 中的 NodeJS 中使用 FireStore-admin。为此,我将 node_modules 和 serviceAccount.json 文件压缩到以下层次结构中,并将其上传到图层:
nodejs->
- node_modules
- package.json
- package-lock.json
- serviceAccount.json(包含连接到 FireStore 集合的凭据)
代码如下:
var admin = require('firebase-admin');
var serviceAccount = require('./serviceAccount.json');
admin.initializeApp({
credential: admin.credential.cert(serviceAccount)
});
但我在运行这个 lambda 函数时收到以下错误:
"errorType": "Runtime.ImportModuleError",
"errorMessage": "Error: Cannot find module './serviceAccount.json'
您还可以在下面找到 zip 的图片:
如何访问 json 文件和/或更正层次结构以使其正常工作?
【问题讨论】:
-
serviceAccount.json相对于层文件位于.中,但可以在 Lambda 运行时将层提取到不同的路径。我对 JSrequire的工作原理一无所知,只是到处乱想。也许看看github.com/awsdocs/aws-lambda-developer-guide/tree/master/…
标签: node.js json aws-lambda