【问题标题】:Basic Alexa Skills基本的 Alexa 技能
【发布时间】:2017-01-17 00:19:41
【问题描述】:

我已下载 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:无法读取未定义的属性“应用程序”"

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

非常感谢。

【问题讨论】:

  • 我不认为这是足够的信息。我也做了这个教程。我的猜测是,你没有正确地将你的技能与你的 Lambda 函数联系起来。

标签: alexa-skills-kit


【解决方案1】:

这看起来像一个 javascript 错误,告诉您您正在尝试对未定义的变量使用名为 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 时,您都可以选择“测试”,然后您刚刚保存的请求就会运行。

最棒的是,控制台日志将显示在右下角,让您不必切换到日志并刷新才能查看它们。

【讨论】:

  • 感谢“设置:”部分,这使答案与我相关。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-01-21
  • 2021-02-27
  • 2020-05-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多