我正在尝试我的第一个打包的AWS Lambda函数,该函数当前失败并返回" required未定义"在日志中。
最初在函数中,我希望得到一个简单的节点命令,使用npm模块从Google Sheet返回一个json文件。从安装了gsjson
的ec2实例开始,这非常简单。我只需输入:
gsjson 1KIg84G9CXErw2bWhkEHWUkOI4CR-biFeLqCtdypaLU8 fruits.json
[![EC2 NodeJS - gsjson] [1]] [1]
https://www.npmjs.com/package/gsjson
我上传的打包zip文件包含一个index.js文件和一个节点模块文件夹,其中包含来自GitHub的google-spreadsheet-to-json npm模块。
这是index.js代码:
var gsjson = require('google-spreadsheet');
exports.handler = function(event, context) {
'gsjson 1KIg84G9CXErw2bWhkEHWUkOI4CR-biFeLqCtdypaLU8 fruits.json';
}
更新:调整错误后,错误消息现在为
"errorMessage": "Cannot find module 'google-spreadsheet'",
更新2 - 成功:虽然npm模块名为gsjson,npm文件夹名为google-spreadsheet-to-json。要求必须参考" google-spreadsheet"。编辑上面的代码
答案 0 :(得分:2)
required
未定义,因为您没有定义它。另外,我希望你的意思是require
。您可以查看docs了解更多信息。
var gsjson = require('google-spreadsheet-to-json');