2

按照以下所列步骤授权帐户时遇到问题: https ://developers.google.com/nest/device-access/get-started

步骤是:

  1. 注册设备访问计划>>使用私人帐户支付
  2. 使用 Google 帐户激活受支持的 Nest 设备。>>使用我的私人 Google 帐户登录 Google home 或 Nest 时,我可以看到我的 Nest 设备。
  3. 创建一个 Google Cloud Platform (GCP) 项目以启用 SDM API 并获取 OAuth 2.0 客户端 ID。>>使用“启用 API 并获取 OAuth 2.0 客户端 ID”按钮并在出现提示时插入重定向 URL。已验证 GCP 控制台中的所有内容均正确无误。
  4. 创建一个设备访问项目以接收项目 ID。>>设置时使用步骤 3 中的 OAuth 客户端 ID

使用此 URL 尝试获取授权码:

https://nestservices.google.com/partnerconnections/project-id/auth?
redirect_uri=https://www.google.com&
access_type=offline&
prompt=consent&
client_id=oauth2-client-id&
response_type=code&
scope=https://www.googleapis.com/auth/sdm.service

是的,我用设备访问控制台中的项目 ID 和第 3 步中的 OAuth 客户端 ID 替换了项目 ID。我从第 1 步和第 2 步中选择了 Google 帐户。

我仍然在浏览器中收到错误消息:

无法链接到 [项目名称]

我从来没有收到提示允许项目访问我的 Google 帐户(此处的步骤 3-5 )。

谢谢您的帮助。

4

3 回答 3

0

当您使用 Google 页面上的内置复制功能时,它会复制以下代码:

https://nestservices.google.com/partnerconnections/project-id/auth?
redirect_uri=https://www.google.com&
access_type=offline&
prompt=consent&
client_id=oauth2-client-id&
response_type=code&
scope=https://www.googleapis.com/auth/sdm.service

但是当你进入浏览器时,每个 & 后面都有空格。因此,您需要手动删除空格才能实际使用正确的 URL。

于 2020-10-11T13:16:39.670 回答
0

操作顺序在这里似乎很重要。我遇到了和你一样的错误,但它是在 GCP 中创建 API 凭据之前创建设备访问项目之后。

从设备访问控制台删除我的项目并重新创建它后,它工作正常。在这两种情况下,我都使用了相同的 API 凭据。

于 2020-10-21T01:49:55.583 回答
0

我遇到了这个问题,我想通了。问题的症结在于OAuth client IDinhttps://console.nest.google.com/device-access/project/$PROJECT_ID/information必须是名称。请注意,创建项目后它通常为空。这是因为您在步骤中的 Project 为Getting Started之后创建了 OAuth Client 。

此外,在 OAuth 客户端的重定向 URI 中,https://www.google.com设置时将其列入白名单。您可以稍后将其删除。

于 2020-12-06T20:16:38.817 回答