所以我正在学习如何创建alexa技能,并且按照以下步骤成功地创建了两个技能,但是由于某些原因,当我现在执行这些步骤时,我缺少了node_modules文件夹和package.json。当我测试我的技能时,这会导致以下错误:
无法导入模块“索引”:错误
The steps I am following are:
- go to the aws console select lambda
- select create new function
- blueprints -> select alexa-skill-kit-sdk-factskill -> configure
- select existing role -> lambda_basic_execution
- create function
据我了解,alexa-skill-kit-sdk-factskill具有这些依赖性。如果可以的话,有没有办法手动添加它们?我试图找到一个控制台,但是在lambda工作区中看不到它。
答案 0 :(得分:0)
您可以在本地将整个目录内容压缩并上传到 lambda。但是,是的,您当时不能在控制台中编辑代码。
请记住,必须在处理程序部分中提及处理程序文件名。
就像您的文件名为app.js then app.handler
。
答案 1 :(得分:0)
我遇到了这个问题,但是不幸的是,Lambda控制台没有为我们提供安装Node.js依赖项的控制台。
因此,您必须实际部署lambda函数。有很多方法可以做到这一点,但更受欢迎的是:
当您学习Alexa技能时,我会向您建议Amazon建议开发人员创建和组织Alexa Skill和Lambda函数的方式。
使用ASK CLI
用于创建new Alexa技能。 这将创建一个目录,其中将包含:
例如用于创建技能代码的命令,用于事实模板技能
ask new [--template [template-name] [--url <url>]]
[-n|--skill-name <name>]
[-p| --profile <profile>] [--lambda-name <lambda-name>]
使用ASK CLI,将为您带来同时部署技能和lambda的优势。
我知道ASK CLI的使用是如此之快,但是一旦掌握了它,它对于Alexa开发人员来说是非常有用的工具。