【发布时间】:2018-07-02 09:28:08
【问题描述】:
我已经从这里设置了示例程序:https://github.com/GoogleCloudPlatform/cpp-docs-samples/tree/master/iot/mqtt-ciotc
当我尝试运行示例时,我得到的唯一错误消息是: '连接失败,返回码1'
然后我继续尝试 NodeJs 版本https://github.com/GoogleCloudPlatform/nodejs-docs-samples/tree/master/iot/mqtt_example
使用相同的roots.pem、私钥和公钥,NodeJs 示例完美运行。我可以在 Google 控制台上查看收到的消息。
是否有任何工具可以帮助我调试 C 示例的问题?或者对可能出现的问题有什么建议?
谢谢, 一个
【问题讨论】:
-
您是否更改了 C 中的示例代码:
.clientid = "projects/{your-project-id}/locations/{your-region-id}/registries/{your-registry-id}/devices/{your-device-id}",和其他您必须输入具体信息的选项? -
是的,我已经设置了所有这些。 C 代码上的 clientid 与 Java 端的完全匹配。
-
我刚刚在某处读到,默认情况下,MQTT 协议可以默认为 Google 不支持的 3.1,所以我在 C 代码中设置了这个:conn_opts.MQTTVersion = MQTTVERSION_3_1_1 现在我得到返回码 4,即“连接被拒绝 - 用户名或密码错误”
-
也许可以尝试打印 JWT 并在 jwt.io 上进行测试
标签: c google-cloud-platform mqtt google-cloud-iot