2017-03-26 61 views
0

我正在创建我的第一个Alexa技能,它从dynamodb表中获取数据。我在node.js和alexa都很天真。我成功地创建了一个示例Space Geek技能集,然后当我创建自己的技能集时,我使用了相同的包(以确保库,响应文件保持不变),但只改变了index.js(这是我的lambda funnction)。当我拉姆达控制台上测试这个功能,我得到下面的错误:“errorMessage”:“lambda函数中未定义事件”

{ 
    "errorMessage": "event is not defined", 
    "errorType": "ReferenceError", 
    "stackTrace": [ 
    "Module._compile (module.js:570:32)", 
    "Object.Module._extensions..js (module.js:579:10)", 
    "Module.load (module.js:487:32)", 
    "tryModuleLoad (module.js:446:12)", 
    "Function.Module._load (module.js:438:3)", 
    "Module.require (module.js:497:17)", 
    "require (internal/module.js:20:19)" 
    ] 
} 

此功能用于工作,而无需使用Alexa的完美的罚款。现在我无法调试该问题。我测试了这个来自Alexa的技能测试,然后得到了以下错误:

远程端点不能称其或响应,它返回无效

我的文件夹结构是:

-Node_Modules

-index.js

-template.yaml

任何p ointers是高度赞赏。

+0

你引用'在你的代码event'地方?没有看到代码,它看起来就是这样。我假设你在Lambda中试图引用'event'来从Alexa获得有效载荷,但是听起来你没有正确地做到这一点。 – alanwill

+0

你可以发布你的代码吗? – imTachu

回答

0

在你index.js,你应该有在参数event功能,即使你不使用它:

exports.handler = (event, context, callback) => { [...] };