想跑一个用MQTT传输JSON的实例,上网找了一下开源代码,找到一个比较合适的:https://blog.csdn.net/ktigerhero3/article/details/107178252,程序源码直接用这个就可以,然后过程中需要进行一下环境的配置,本篇文章主要记录下整个过程。
我的环境是ubuntu18.04
先整体看一下我的目录树:
下面介绍一下为了把整个代码跑起来所做的工作:
1. 配置mosquitto
这个我就选择源码安装了,去https://mosquitto.org/files/source/下载即可
然后执行:
cd mosquitto-2.0.9
make
sudo make install
如果执行程序时报错:Mosquitto.h not such file or directory,就是上面这步还没有装好
2. 拷贝cjson文件
样例的源码中使用到了cJSON.c和cJSON.h,这个要自己进行导入,去https://github.com/DaveGamble/cJSON中把两个文件拿到放到自己的项目里
3. 执行程序,开启订阅和发布节点
执行这步的时候会报错:
error while loading shared libraries: libmosquitto.so.1: cannot open shared object file: No such file or directory
解决方案是:
sudo ln -s /usr/local/lib/libmosquitto.so.1 /usr/lib/libmosquitto.so.1
ldconfig
然后就可以正常执行了,其实只运行发布订阅的时候服务器会默认开启,当然也可以自行开启:
mosquitto -v
如果执行时报错如下:
解决方案如下:
sudo lsof -i:1883
sudo kill xxx
ps:xxx是PID号文章来源:https://www.toymoban.com/news/detail-436847.html
现在一切正常啦!看看效果:
发送端:
订阅端:
服务器端:
文章来源地址https://www.toymoban.com/news/detail-436847.html
到了这里,关于MQTT传输JSON数据实例的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!