我正在尝试使用Amazon帐户链接服务将Alexa技能链接到Microsoft App注册。尽管它使我可以登录并向亚马逊发送代码,但我会遇到经典错误:"无法链接您的技能。请稍后再试。"我认为(尽管我不完全确定)这是问题所在。
根据此线程,状态和身份验证代码需要在#之后的重定向URL中,例如https://layla.amazon.com/api/skill/link/{appid}?{any-query-string}#code={token}&state={state}
。
但是,从Chrome Dev工具中,Microsoft似乎正在处理QUERY字符串中的代码和状态:https://layla.amazon.com/api/skill/link/{appid}?code={code}&state={state}&session_state={session_state}
。结果,该代码没有由亚马逊处理,并且它从未要求一个令牌。
如果有人可以确认这实际上是问题,或者对如何解决它有任何想法(理想情况下,我可以在不需要我自己的整个授权API的情况下,尽管我可以在必要时使用一些帮助),请告诉我!
有关信息:
- 我正在使用v2端点和auth code授予。
- Microsoft App注册正在工作,因为我可以将其发布给Postman。
- 我使用了Alexa建议的重定向URL(
https://layla.amazon.com/api/skill/link/{id}
和https://pitangui.amazon.com/api/skill/link/{id}
)尽管我尝试单独使用它们,以防万一,但没有帮助。 - 范围是calendars.readwrite和user.read,作为委派权限。
将应用程序ID添加为Alexa技能链接设置中的范围