alexa-skills-kit - Alexa 基本技能

标签 alexa-skills-kit

我已经下载了 Alexa Skills 在线教程:

https://github.com/amzn/alexa-skills-kit-js/blob/master/samples/reindeerGames/src/index.js

并遵循(我认为)教程中的所有说明:

https://developer.amazon.com/public/community/post/TxDJWS16KUPVKO/New-Alexa-Skills-Kit-Template-Build-a-Trivia-Skill-in-under-an-Hour

这是针对首次 Alexa Skills 开发人员的教程。我的问题是,点击“保存并测试”按钮后,我收到此错误消息:

errorMessage”:“异常:TypeError:无法读取未定义的属性“应用程序””

有谁知道上述错误是什么意思或如何消除它?

非常感谢。

最佳答案

这看起来像一个 JavaScript 错误,告诉您您正在尝试在 undefined variable 上使用名为 application 的属性。

JavaScript 会将值“未定义”分配给您使用但尚未设置的任何变量。

您可以通过多种方式调试 Lambda 中的问题。也许最简单的方法是查看日志。为此:

  1. 转到 Lambda 控制台(您可以在其中将代码上传到 Lambda)
  2. 选择“监控”选项卡
  3. 选择“在 CloudWatch 中查看日志”(位于右上角)

查看最新日志,查找您的文件之一(通常是 index.js)中报告的错误,特别是行号。这应该可以帮助您找到错误。

请注意,时间戳为 GMT,因此可能与您的实际时间不匹配。如果您有多个条目,这可能会造成困惑。但分钟应该匹配,帮助您验证您正在查看的日志条目是否正确。

调试 Lambda 问题的更高级、更快捷的方法是包含“测试”请求,并在每次将代码上传到 Lambda 时运行该请求。

要进行此设置:

  1. 在 ASK 测试页面的“服务模拟器”部分下运行您定义的语句之一。
  2. 复制“Lambda 请求”部分中显示的代码。
  3. 现在切换到 Lambda 函数的 Lambda 控制台
  4. 点击“操作”按钮中的向下箭头并选择“配置测试事件”
  5. 将您在上面复制的请求粘贴到文本字段
  6. 点击“保存并测试”。

现在,每次您将新代码上传到 Lambda 时,您都可以选择“测试”,然后您刚刚保存的请求将会运行。

最重要的是,控制台日志将显示在右下角,使您无需切换到日志并刷新即可查看它们。

关于alexa-skills-kit - Alexa 基本技能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36587169/

相关文章:

alexa - 要求 CLI 部署到不同的环境?

aws-lambda - Alexa 上的音频流

python - Alexa:使用 Dialog.Delegate 和 Python 链接 intent

javascript - 数组不能访问元素?

javascript - 在特定状态下启动 Alexa Skill

amazon-web-services - Alexa 帐户链接 - 如果链接的访问 token 已过期怎么办?我正在使用隐式授权流程

alexa-skills-kit - 使用 Alexa 位置 API 时 Alexa 禁止响应 403

node.js - 如何在 Alexa Skill Kit (ASK) 中流式传输响应

aws-lambda - 如何在 Alexa 中处理 intent 中的同义词?

alexa-skills-kit - Alexa的自定义技能可以访问用户的语音流/音频文件吗?