Alexa 帐户链接 - 预期格式

Alexa Account Linking - Expected format

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

AVS SDK 中的 Amazon Developer Forum I tried the tutorial referenced on a home brew AVS device (RPi3) and it works with no issue (I can get the user name etc. from my Amazon account), although I still can't figure out how to access activity api json 中有多个关于此主题的话题。

账户关联步骤(授权码大流程):

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

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

令牌响应应如下所示。我相信 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.