1

我有一个预先存在的带有用户帐户的网络应用程序。我想用亚马逊的 echo 扩展功能。

当用户在他们的 Echo/Alexa 仪表板中启用该技能时,它会将他们重定向到我的应用程序的登录页面,并使用Authorization URL https://foo.com/auth.

我检查了来自的传入请求,请求中Authorization URL https://foo.com/auth没有客户端 ID、用户 ID 或用户电子邮件。如果我无法在我的网络服务器上保存该令牌以及某种回显客户端设备 ID,那么生成一个令牌并将其发送回 Amazon 对我没有任何好处。

帐户链接隐式授予

3 用户使用他们的正常凭据登录您的站点。

4 您的服务对用户进行身份验证,然后生成唯一标识系统中用户的访问令牌。

当亚马逊将用户重定向到我的应用程序以输入登录凭据时,我如何将我给他们的令牌链接到他们的回显设备以供将来请求?

在此处输入图像描述

4

1 回答 1

0

当用户输入他的凭据时,您不会这样做,而是在链接完成之后。

当用户启动你的技能时,你可以用 来识别他context.System.user.userId,访问令牌将在 中 context.System.user.accessToken,设备在 中context.System.device. deviceId。同样accessToken可以用于多个设备,并且userId如果用户禁用并重新启用您的技能,则会发生变化。

更多信息:请求和响应 JSON 参考

于 2017-12-05T05:07:19.180 回答