我正在创建带有帐户链接的 Alexa 技能。我获得了链接授权码并将其兑换为访问令牌。然后,我尝试将所有参数:代码、访问令牌、技能 ID 放入 Alexa Skill Activation API 中。我总是收到一条消息:“帐户链接凭据无效”。
var clientServerOptions = {
uri: `https://api.amazonalexa.com/v1/users/~current/skills/${SkillId}/enablement`,
body: JSON.stringify({
stage: "development",
accountLinkRequest: {
redirectUri: "https://api.amazon.com/auth/o2/token",
authCode: req.body.code, //the code I got from the start
type: "AUTH_CODE"
}
}),
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${req.body.access_token}` //my access token
}
}
request(clientServerOptions, function (error, response) {
if(error != null) {
console.error(error);
} else {
console.log(response.body);
}
return;
});
该怎么办?
在启用应用程序-应用程序链接(从您的应用程序开始)的过程中,我犯了一些错误。请检查一下您是否可能会制作其中任何一个。
Mistakes -
-
创建新的 LWA(通过 Amazon 登录)配置文件.
您不需要新的 LWA 配置文件,您应该使用技能页面上权限选项卡下的 Alexa 凭据。他们有正确的范围(alexa::skills:account_linking
)应用程序-应用程序链接和 LWA 配置文件所需的不能具有此范围。
-
使用实时技能的开发版本.
我修改了开发版本中的帐户链接部分以指向测试部署。尽管开发者控制台允许进行这些更改,但帐户链接每次都失败,因此我创建了一项新技能。
-
重复使用 Alexa 授权码.
我没有意识到,即使是一个错误的请求也会使 Alexa 授权码失效。
-
登录错误的 Alexa 帐户.
当您在测试帐户链接期间进入 LWA 屏幕时,仅使用创建技能的开发人员凭据登录。这是因为目前该技能仅适用于 Alexa 开发者帐户,其他任何人都无法使用。 (甚至 Beta 测试人员也没有)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)