Alexa 帐户链接 - 预期格式

Posted

技术标签:

【中文标题】Alexa 帐户链接 - 预期格式【英文标题】:Alexa Account Linking - Expected format 【发布时间】:2018-06-05 06:21:15 【问题描述】:

我正在尝试在我的技能中使用帐户链接。问题是文档不够清楚。我有登录屏幕,它重定向到 URL 参数中提供的亚马逊重定向 uri,我还包含了代码(顺便说一句,我正在使用 Auth Code Grant),问题就来了。我的脚本获取代码和客户端凭据并生成两个令牌,但它应该如何处理它们?他们的系统是否等待 json 响应或包含使用其名称作为键的两个令牌的东西,还是我应该再次重定向?当他们说服务器应该返回访问令牌和刷新令牌时,他们在文档中是什么意思?

【问题讨论】:

【参考方案1】:

令牌响应应如下所示。我相信 exires_in 和 refresh_token 属性是可选的。


  "access_token": "...",
  "refresh_token": "...",
  "expires_in": 3600
  "token_type": "bearer"

https://developer.amazon.com/docs/alexa-voice-service/authorize-companion-site.html#auth-code-grant.

【讨论】:

【参考方案2】:

Amazon Developer Forum 有多个关于此主题的主题我在家庭 brew AVS 设备 (RPi3) 上尝试了tutorial referenced,它可以正常工作(我可以从我的亚马逊帐户获取用户名等) ,虽然我仍然不知道如何在 AVS SDK 中访问activity api json。

【讨论】:

本教程展示了如何设置登录亚马逊。我正在尝试在自己的服务器上构建身份验证系统。我想知道我应该如何将令牌从我的服务器返回到 alexa【参考方案3】:

帐号关联步骤(验证码大流程):

• 用户将被重定向到基于表单的登录页面,用于获取用户凭据 • 通过您的后端安全脚本验证用户凭据和用户权限后,它将重定向请求以授权端点生成授权码。 • 一旦请求到达授权端点,它将验证客户端详细信息。 • 一旦通过验证,用户将被重定向到批准页面。 • 一旦我们得到用户的确认,您的后端安全服务器脚本需要创建自动化代码并需要将其返回给 AWS alexa 客户端。 • AWS 客户端将调用我们的访问令牌端点以获取访问令牌和刷新令牌。 • AWS 客户端获得访问令牌和刷新令牌后,该技能将链接到用户。 • 用户链接技能后,AWS Alexa 客户端会在每个请求中发送访问令牌

您的问题: AWS 客户端将调用您的访问令牌端点 url 以及授权代码和客户端凭证,您的后端脚本需要验证这些输入并需要创建访问令牌、刷新令牌并将其发送回 AWS 客户端。它是来自 AWS 客户端的 POST 请求,您必须返回对相同 POST 请求的响应。

【讨论】:

以上是关于Alexa 帐户链接 - 预期格式的主要内容,如果未能解决你的问题,请参考以下文章

如何使用亚马逊的 Alexa API 为技能设置帐户链接?

Amazon Alexa Skills Kit:如何与外部应用程序帐户/用户 ID 关联

批量Excel数据导入Oracle数据库 导入excel错误:外部表不是预期的格式 解决方案

Node.js Lambda 函数从 REST 调用将“响应无效”返回给 Alexa 服务模拟器

我想要一个 .mp4 格式的 vimeo 直接视频文件链接的示例 url。

导入excel错误:外部表不是预期的格式 解决方案