nest-device-access - 列出设备和结构为空
问题描述
使用 Golang SDK 进行智能设备管理,我想访问我的 Nest 恒温器。
我能够对 SDM API 进行身份验证和成功的 API 调用。但是,当我调用Devices.List(...).Do()
响应时包含一个空列表。
devices, err := sdmService.Enterprises.Devices.List(parent).Do()
if err != nil {
log.Fatal(err)
}
log.Print("Got devices")
log.Printf("%+v", devices)
恒温器肯定与我正在验证的 Google 帐户相关联。
有没有我可能错过的东西。一个简单的代码参考会很棒!
编辑
看起来我可能需要在下面的屏幕截图中添加以下范围。然后需要验证。然后我需要有一个应用程序主页、隐私政策、YouTube 视频来展示我将如何使用这些数据......
如何适合爱好者?
编辑 2
个人项目显然免于验证过程。我如何使项目个性化!为什么这么难?(我很RTFM!)
编辑 3
现在得到一点。晚上停下来。我意识到关于个人项目的声明只是意味着“继续它,但你的用户会看到一个警告屏幕”。
但是,当我遵循身份验证流程时,权限列表中不会出现任何设备。我认为这就是问题所在。
解决方案
所以问题出在文档的第一页之一上!典型的。我休息了一下。从顶部向后盘旋,以更清晰的头脑,该文件与我拼凑在一起的额外上下文是有意义的。
我不得不改变
conf := &oauth2.Config{
ClientID: "...",
ClientSecret: "...",
RedirectURL: "...",
Scopes: []string{
smartdevicemanagement.SdmServiceScope,
},
Endpoint: google.Endpoint
}
至
conf := &oauth2.Config{
ClientID: "...",
ClientSecret: "...",
RedirectURL: "...",
Scopes: []string{
smartdevicemanagement.SdmServiceScope,
},
Endpoint: oauth2.Endpoint{
AuthURL: fmt.Sprintf("https://nestservices.google.com/partnerconnections/%s/auth", projectID),
TokenURL: google.Endpoint.TokenURL,
},
}
推荐阅读
- php - 一个字符串响应中的 Ajax 多个文件名
- angular - 发送带有角度查询参数的帖子时出错
- docker - 无人机 CI - docker 插件 - 解析错误。为什么无人机无法解析?
- ffmpeg - FFMPEG 图像序列正常并反转为单个视频
- arduino - Mega R3 WiFi:ESP8266 模块代码中串行通信的初始化问题
- css - 页面加载时可变字体闪烁
- javascript - react-native-fs 库没有移动或复制文件 - 奇怪的结果
- vba - VBA:使用数组公式
- quaternions - 如何找到两个 IMU 测量值之间的转换?
- react-native - React Native将文件上传到multer,我得到空缓冲区