【问题标题】:How to get the authorization from Nest via firebase API?如何通过 Firebase API 从 Nest 获得授权?
【发布时间】:2014-07-25 03:13:10
【问题描述】:

我是 Nest 编程新手,我对如何通过 firebase API 从 Nest 获得授权感到困惑。

我想在 Android 中编写一个应用程序来访问设备信息。我已经在 Nest 注册了一个帐户,并从 Web 界面创建了一个客户端。我在客户端页面获得了授权 URL,并使用 chrome 扩展程序创建了 2 个虚拟设备。

来自https://developer.nest.com/documentation/authorization-overview,我知道我需要使用基于 PIN 的方法,所以我使用以下代码:

Firebase ref = new Firebase("https://home.nest.com/login/oauth2?client_id=CLIENT_ID&state=STATE");
Log.i(TAG, "getParams " + ref.getParams());

当我记录这些信息时,我得到了以下日志:

getParams {}

谁能帮助我通过 firebase API 从 Nest 获得授权?


更新

我研究了 RIT 提供的网站,但有些事情我仍然感到困惑。

我的客户页面有以下信息:

Client ID:  b4bf4721-2***-4***-a***-c1a*********
Client secret: S578in************
Authorization URL: https://home.nest.com/login/oauth2?client_id=b4bf4721-2***-4***-a***-c1a*********&state=STATE
Access Token URL: https://api.home.nest.com/oauth2/access_token?code=AUTHORIZATION_CODE&client_id=b4bf4721-2***-4***-a***-c1a*********&client_secret=S578in************&grant_type=authorization_code

当我使用以下代码时:

Firebase ref = new Firebase(Authorization URL);

我希望它会返回 PIN 码,但它没有。

另外,来自https://developer.nest.com/documentation/how-to-auth,主题 3。用您的授权码交换访问令牌有一个命令:

"POST https://api.home.nest.com/oauth2/access_token?code=STRING&client_id=STRING&client_secret=STRING&grant_type=authorization_code"

有谁知道有没有firebase API可以实现这个命令?

【问题讨论】:

标签: java android nest-api


【解决方案1】:

授权是在OAuth 2.0 protocol 之后完成的,一旦您获得了其中的令牌,您就可以使用 Firebase API。 firebase 协议不提供直接授权。

【讨论】:

    猜你喜欢
    • 2017-07-02
    • 2021-11-01
    • 2019-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多