OneNET平台使用MQTT.fx-1.7.1接入,invalid protocol version和Bad?user?name or password错误解决方案
最近在学习OneNET平台,MQTT.fx 是目前主流的 MQTT 桌面客户端,它支持 Windows、 Mac、Linux 操作系统,可以快速验证是否可与云平台进行连接,并发布或订阅消息。用来前期和物联网云平台调试非常方便。相信很多小伙伴从MQTT.fx开始的。刚入坑的菜鸟总会有一些摸不着头脑的小问题,问题虽小,可老是过不去这个坎,很多小伙伴的刚燃起的小火苗有可能就要熄灭了。今天就来聊聊本人刚入坑时遇到的2个小问题,希望能帮小伙伴们跳过这个坑。
第一步在OneNET平台注册账号账号,添加产品,添加设备啥的就不说了,具体的注册步骤可以参考MQTT物联网套件的文档。参考链接:https://open.iot.10086.cn/doc/mqtt/
我们从连接MQTT.fx-1.7.1客户端遇到的问题开始。上图
点击connect后提示invalid protocol version 无效协议版本,连接失败。
解决方法:
需要更换版本号至3.1.1;如下图 点击设置按钮。选择通用中MQTT Version,取消默认勾选,选择版本3.1.1。 点击应用按钮。OK。
刚解决完这个问题,又遇到了下一个问题。
点击connect后提示?Bad?user?name or password?错误的用户名和密码,连接依旧失败。遇到问题解决问题,用户名密码依旧在设置的进行修改。点击User Credentials标签。
User Name:用户名选择MQTT物联网套件中的产品ID,注意:是产品ID,非设备ID。
Password:密码的获取需要用到Token,OneNET提供了token生成工具,可以在平台直接下载。下面详细说一下token生成工具的填写。
res:格式为products/{pid}/devices/{device_name},由产品的ID和设备的名称组成;pid和上述中的User Name是同一个号码;即为产品ID,而非设备ID;device_name为设备的名称,和上述中Client ID为同一个名称;
et:访问过期时间 expirationTime,unix时间;大家可以访问https://time.is/Unix上查看当前的unix时间,设置的访问时间应大于当前的时间。
key:这里填入的key指的是选择设备的key;在MQTT物联网套件下的设备列表中选择,直接复制过来即可。如下所示,绿色部分为有用信息,红色是一个小坑。
完成这些后点击connect后,右边的绿灯亮起。成功连接。在OneNET平台上查看设备状态,显示为在线。
连接成功后,我们就可以直接使用Publish和Subscribe功能了。fancy也在实验中,后面还会遇到什么问题呢,我们边实践边聊。
本文暂时没有评论,来添加一个吧(●'◡'●)