正如我的标题所解释的,我得到了以下错误:
{
"errorMessage": "Cannot find module 'index'",
"errorType": "Error",
"stackTrace": [
"Function.Module._resolveFilename (module.js:338:15)",
"Function.Module._load (module.js:280:25)",
"Module.require (module.js:364:17)",
"require (module.js:380:17)"
]
}
我已经尝试了creating-a-lambda-function-in-aws-from-zip-file和simple-node-js-example-in-aws-lambda中提供的两种解决方案
我的配置当前如下所示:x1c 0d1x
文件结构是:
我的index.js处理函数看起来像这样:
exports.handler = function(event, context) {
除了上面两个答案中所述的之外,还有什么可能导致这个问题?我已经尝试了两种解决方案,我也为函数分配了更多的内存,以防它无法运行。
编辑-为了尝试,我创建了一个更简单的版本,我的原始代码,它看起来像这样:
var Q = require('q');
var AWS = require('aws-sdk');
var validate = require('lambduh-validate');
var Lambda = new AWS.Lambda();
var S3 = new AWS.S3();
theHandler = function (event, context) {
console.log =('nothing');
}
exports.handler = theHandler();
但仍然不能处理同样的错误?
8条答案
按热度按时间8fq7wneg1#
尝试压缩并上传文件夹lambda-create-timelapse的内容,而不是文件夹本身。
goucqfw62#
如果其他人不清楚这一点,以下是步骤:
第1步导航到项目的文件夹,然后打开该文件夹,使您位于其中:
第2步选择您要上传到Lambda的所有图像:
第3步右键单击并压缩选定的文件:
这将为您提供一个.zip文件,这是您需要上传到Lambda:
有很多方法可以实现自动化,但这是一个手动过程。
k4aesqcs3#
我自己也遇到过几次这个问题,这确实与压缩文件夹有关,而不仅仅是像你应该做的那样压缩文件夹的内容。
对于那些在终端工作的人...
在.js文件所在的目录中,运行以下命令:
第一个月
*
指示客户机压缩此文件夹中的所有内容,../zipname.zip
告诉它将文件命名为zipname.zip
并将其放在当前目录之外。2jcobegt4#
我以前遇到过同样的问题-我重新格式化了代码。
von4xj4u5#
当处理程序无法在第一级压缩文件中定位时,就会出现此问题。因此,无论何时看到此类错误,请确保该文件位于展开文件夹的第一级。
要修复此问题,请压缩文件,而不是包含文件的文件夹。
ig9co6j16#
正确的
Lambda
函数声明如下所示:您可能有其他语法错误,导致
index.js
文件无法正确运行。请尝试使用其他文件在本地运行代码,并将index.js
用作您自己的模块。m2xkgtsf7#
确保在处理程序中添加以下代码
11dmarpk8#
发生这种情况的另一个原因是,在打包和部署之前,您没有在文件夹中执行
npm install
操作。