如何使用亚马逊的 Alexa API 为技能设置帐户链接?
How to Set Up Account Linking for a Skill using Alexa API from Amazon?
我正在尝试弄清楚如何 link 使用自定义用户帐户的技能。以下是文档中的内容:
用于隐式授予的帐户 linking 流量(用于自定义技能):
- 在 Alexa 应用程序中,用户启用了该技能。
该应用程序显示您的
使用 授权 URL 就在应用内登录页面
在开发人员门户上注册您的技能时提供。什么时候
配套应用调用此 URL,它包括 state
、client_id
、
response_type
和 scope
作为查询字符串参数。
- Alexa 服务在帐户 linking 过程中使用该状态。您的页面需要跟踪此值,因为您必须稍后将其传回。
state
账户期间使用Alexa服务
client_id
是您在开发人员门户中为该技能设置帐户时定义的值 link。
- 对于隐式授权流,
response_type
始终是 token
。
scope
是可选的访问范围列表,指示请求的访问级别。在为您的技能启用帐户 linking 时,您可以定义要支持的范围集。
redirect_uri
是 URL,一旦用户通过身份验证,您的服务会将用户重定向到该地址。
用户使用您站点的正常凭据登录。
- 您的服务对用户进行身份验证,然后生成一个访问令牌,在您的系统中唯一标识用户。
- 您的服务将用户重定向到指定的
redirect_uri
并传递 URL 片段中的 state
、access_token
和 token_type
。
- Alexa 服务验证返回的信息,然后为 Alexa 用户保存
access_token
。
- 用户的 Alexa 帐户现已 link 编辑到您服务中的帐户,技能可以使用了。
这是我从亚马逊得到的:
{
"client_id":"my-client-id",
"response_type":"token",
"state":"some_long_string",
"redirect_uri":"https:\/\/subdomain.amazon.com\/spa\/skill\/account-linking-status.html?vendorId=W5TGH673R
}
根据我在上面阅读的内容,我将重定向回:
https://subdomain.amazon.com/spa/skill/account-linking-status.html?vendorId=W5TGH673R&state=same_long_string&access_token=something-I-made-up&token_type=Bearer
不幸的是,这似乎不起作用。基本上我得到:Unable to link your skill
有什么想法吗?
我 运行 遇到了类似的问题,我不得不在令牌前使用散列而不是符号。我的重定向 url 是:
https://subdomain.amazon.com/spa/skill/account-linking-status.html?vendorId=W5TGH673R#access_token=something-I-made-up&state=same_long_string&token_type=Bearer
我正在尝试弄清楚如何 link 使用自定义用户帐户的技能。以下是文档中的内容:
用于隐式授予的帐户 linking 流量(用于自定义技能):
- 在 Alexa 应用程序中,用户启用了该技能。
该应用程序显示您的 使用 授权 URL 就在应用内登录页面 在开发人员门户上注册您的技能时提供。什么时候 配套应用调用此 URL,它包括
state
、client_id
、response_type
和scope
作为查询字符串参数。- Alexa 服务在帐户 linking 过程中使用该状态。您的页面需要跟踪此值,因为您必须稍后将其传回。
state
账户期间使用Alexa服务client_id
是您在开发人员门户中为该技能设置帐户时定义的值 link。- 对于隐式授权流,
response_type
始终是token
。 scope
是可选的访问范围列表,指示请求的访问级别。在为您的技能启用帐户 linking 时,您可以定义要支持的范围集。redirect_uri
是 URL,一旦用户通过身份验证,您的服务会将用户重定向到该地址。
用户使用您站点的正常凭据登录。
- 您的服务对用户进行身份验证,然后生成一个访问令牌,在您的系统中唯一标识用户。
- 您的服务将用户重定向到指定的
redirect_uri
并传递 URL 片段中的state
、access_token
和token_type
。 - Alexa 服务验证返回的信息,然后为 Alexa 用户保存
access_token
。 - 用户的 Alexa 帐户现已 link 编辑到您服务中的帐户,技能可以使用了。
这是我从亚马逊得到的:
{
"client_id":"my-client-id",
"response_type":"token",
"state":"some_long_string",
"redirect_uri":"https:\/\/subdomain.amazon.com\/spa\/skill\/account-linking-status.html?vendorId=W5TGH673R
}
根据我在上面阅读的内容,我将重定向回:
https://subdomain.amazon.com/spa/skill/account-linking-status.html?vendorId=W5TGH673R&state=same_long_string&access_token=something-I-made-up&token_type=Bearer
不幸的是,这似乎不起作用。基本上我得到:Unable to link your skill
有什么想法吗?
我 运行 遇到了类似的问题,我不得不在令牌前使用散列而不是符号。我的重定向 url 是:
https://subdomain.amazon.com/spa/skill/account-linking-status.html?vendorId=W5TGH673R#access_token=something-I-made-up&state=same_long_string&token_type=Bearer