QtMqtt 库是官方的 mqtt 库,但是是属于 Qt for Automation 商业套件的。需要下载源码自己编译才能用。

源码:https://github.com/qt/qtmqtt

文档:https://doc.qt.io/QtMQTT/qmqttclient.html

编译成静态库

在 Qt5.15.0_MSVC2019_x64_static\include 创建 QtMqtt 文件夹,将头文件从源码 src 文件夹拷贝过去。

set path=D:\Qt\kits\Qt5.15.0_MSVC2019_x64_static\bin;%path%
qmake
nmake
nmake install
nmake docs

使用的时候 pro 文件加 QT += mqtt

MQTT Broker 非加密测试:

broker:test.mosquitto.org 1883

MQTT Broker 单向向认证测试:

broker:test.mosquitto.org 8883

MQTT Broker 双向认证测试:

broker:test.mosquitto.org 8884

证书生成与注册

http://test.mosquitto.org/ssl/

生成私钥:

openssl genrsa -out client.key

生成客户端证书:

openssl req -out client.csr -key client.key -new

在服务器上添加证书: