0

」中的「需要未定義」我嘗試使用我的第一個打包的AWS Lambda函數,該函數當前失敗並在日誌中返回「required is not defined」。「打包的AWS Lambda函數

最初在函數中,我正在尋找一個簡單的節點命令,使用npm模塊從Google表格返回一個json文件。從我安裝了gsjson的ec2實例來看,這非常簡單。我只需要輸入:

gsjson 1KIg84G9CXErw2bWhkEHWUkOI4CR-biFeLqCtdypaLU8 fruits.json 

- [1]

https://www.npmjs.com/package/gsjson

我上傳的打包壓縮文件包含一個index.js文件和節點[EC2的NodeJS gsjson] [1]!] modules文件夾,其中包含來自GitHub的google-spreadsheet-to-json npm模塊。

這裏是index.js代碼:

var gsjson = require('google-spreadsheet'); 

exports.handler = function(event, context) { 
    'gsjson 1KIg84G9CXErw2bWhkEHWUkOI4CR-biFeLqCtdypaLU8 fruits.json'; 
} 

UPDATE:調節所述錯字之後,現在該錯誤消息是

"errorMessage": "Cannot find module 'google-spreadsheet'", 

UPDATE 2 - SUCCESS:雖然NPM模塊叫做gsjson和npm文件夾google-spreadsheet-to-json。該要求必須參考「谷歌電子表格」。以上編輯代碼

回答

2

required未定義,因爲您沒有定義它。另外我希望你的意思是require。您可以查看docs瞭解更多信息。

var gsjson = require('google-spreadsheet-to-json'); 
+0

嗨Arpit,沒有它的definetely'required'。以下是運行測試後Lambda中「詳細信息」的錯誤輸出https://pastebin.com/Yxmxs94g – sigur7

+0

nodejs中沒有任何要求。如果你想導入一些東西,那麼你必須使用'require' –

+0

好吧,看起來像一個錯字。我已經改變要求,現在得到errorMessage「:」無法找到模塊谷歌電子表格 – sigur7