我正在尝试通过从命令行发布一个简单的 http 请求来开始使用 google IOT 核心。
我已经在控制台中设置了我的注册表和设备,并添加了公钥。我设置了一个遥测主题。我使用我找到的 Qt 应用程序,使用私钥生成了 JWT。我正在使用https://cloud.google.com/iot/docs/how-tos/http-bridge中指定的程序。我的命令是:
curl -X POST -H 'authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJzeWx2YW4tam91cm5leS0xOTU4MTUiLCJleHAiOiIxNTIwMzU4NjMyIiwiaWF0IjoiMTUxOTc1MzgzMiJ9.kDkwtWvfAE+AOYT2cObgh8Mux2n1DOuek1KR0YrsFSI=' -H 'content-type: application/json' --data '{"binary_data": "SGVsbG8="}' -H 'cache-控制:无缓存'' https://cloudiotdevice.googleapis.com/v1/projects/sylvan-journey-195815/locations/europe-west1/registries/MyDeviceRegistry/devices/FirstDevice:publishEvent '
当我尝试发布命令时,我收到错误 401“请求缺少所需的身份验证凭据。预期的 OAuth 2 访问令牌、登录 cookie 或其他有效的身份验证凭据”
我不知道在哪里看。我的 JWT 有问题吗?命令的格式是否错误?我需要将公钥添加到注册表还是仅添加到设备。我如何找出问题所在?
非常感谢任何指导