【问题标题】:What's an easy way to setup Oauth for an Amazon Alexa Connected Home skill?为 Amazon Alexa Connected Home 技能设置 Oauth 的简单方法是什么?
【发布时间】:2016-05-29 16:30:48
【问题描述】:

我正在尝试构建 Alexa Connected Home 技能的原型,其中一项要求是使用 Oauth 2.0 链接用户的帐户。由于我只是构建一个原型并且我没有启动和运行 Oauth 服务器,因此满足 Amazon Oauth 要求的最简单方法是什么?

我已尝试按照 Tips for Using Login with Amazon in Alexa Connected Home CoHo Skills 上的说明进行操作,但无论我尝试什么,它都失败了,并显示了一个无意义的错误消息。

  • 有没有人通过亚马逊登录来使用 Alexa Connected Home?
  • 是否有我可以使用的易于使用的 Oauth 提供程序?

【问题讨论】:

    标签: oauth amazon-echo


    【解决方案1】:

    tl;博士

    使用亚马逊控制台登录:

    Allowed Origins: https://amazon.com
    Allowed Return URLs: <copied from "Redirect URL" in the Alexa Developer Console>
    

    Alexa 开发者控制台:

    Authorization URL: https://www.amazon.com/ap/oa
    Access Token URI: https://api.amazon.com/auth/o2/token
    Scope: profile:user_id
    Client Id: <copied from "Client Id" in the Login With Amazon Console. eg. amzn1.application-oa2-client.xxxxxxxxxxx >
    Client Secret: <copied from "Client Secret" in the Login With Amazon Console.>
    

    我能够使用 Login with Amazon 作为 Oauth 提供者。我按照Login with Amazon Web Developer Guide 中的文档找到了我一直缺少的配置。

    为了让 Login With Amazon 工作,我做了以下工作:

    • 打开 Amazon Alexa 开发者控制台并转到您的技能的配置选项卡(包含帐户链接信息的页面。

    • 授权网址设置为https://www.amazon.com/ap/oa

    • 作用域设置为profile:user_id

    • 访问令牌URI设置为https://api.amazon.com/auth/o2/token

    • 复制此页面中的重定向 URL,用于 Login with Amazon 配置(例如重定向 URL:https://pitangui.amazon.com/api/skill/link/xxxxxxxxx)。

    • 按照 Tips for Using Login with Amazon in Alexa Connected Home CoHo Skills 中的步骤 1、2 和 3 中的大部分,“将 Login with Amazon 作为您的 OAuth 提供者”。

    第 1 步 - 创建新的安全配置文件

    要在 Login with Amazon 上创建新的安全配置文件,请转到开发人员控制台并通过单击应用程序和服务导航到 Login with Amazon。进入 Login with Amazon 开发人员控制台页面后,单击 Create a New Security Profile 按钮。

    填写所需信息并点击保存。

    第 2 步 - 获取您的 OAuth 凭据

    您新创建的安全配置文件现在将出现在 Login with Amazon 配置列表中。

    您将收到客户端 ID 和客户端密码。请在提交技能适配器以进行测试配置时包含此信息。

    点击显示。

    第 3 步 - 将您的 Alexa Connected Home Skill 列入白名单

    接下来,我们需要在您的 Login with Amazon 安全配置文件中将 Alexa Connected Home 技能的端点列入白名单。首先,输入您的安全配置文件的 Web 设置:

    接下来,点击页面上的编辑,输入以下数据:

    • 这是我停止遵循该博客文章中的说明的时候。我现在设置 Allowed OriginsAllowed Return URLsAllowed Origins 应该是 https://amazon.comAllowed Return URLs 应该是从 Alexa Developer 的 Account Linking 页面复制的 Redirect URL控制台

    • 从 Login With Amazon 控制台复制 Client IdClient Secret 并将它们粘贴到 Client Id 中,然后Alexa 开发者控制台的 Client Secret 字段。

    【讨论】:

    • 您是否遇到过链接成功并关闭链接页面后,“启用技能”按钮没有变化,仍然提示“需要帐户链接”的问题?发现时未找到任何设备
    • 是的,我在设置 oauth 时收到了很多无用的错误消息。但是一旦设置了 oauth,Alexa 技能就会起作用。
    • 我设法让它工作。实际上,我仍然看到这种行为 - 成功链接亚马逊帐户后,“启用技能”按钮没有更新,直到我单击应用程序中的另一个选项卡并返回。这可能是一个应用程序错误。设备发现是另一个问题。一切都是正确的,我只需要重新创建 lambda 函数即可使其工作。在我看来,这一切都是错误的。
    • 太棒了,它奏效了。 IMO 的文档根本不直观,所以非常感谢。您绝对应该将自己的答案标记为已接受。
    • 嗨,Alex,我用同样的方法进行了技能配置,但是在进行帐户链接时,出现以下错误,请帮助我[技能配置]:i.stack.imgur.com/L4kuB.png[帐户链接] ]:i.stack.imgur.com/JLVUo.png[Alexa 错误]:i.stack.imgur.com/84clt.png
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-22
    • 2016-09-12
    • 2023-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-31
    相关资源
    最近更新 更多