c++ - qtmqtt 无法连接到服务器
问题描述
QtMqtt无法连接服务器,但是我使用其他测试软件可以正常连接。服务器是Ubuntu上的mosquitto。
m_client= new QMqttClient(this);
m_client->setProtocolVersion(QMqttClient::MQTT_3_1_1);
m_client->setPort(1883);
m_client->setHostname("127.0.0.1");
m_client->setClientId("qt");
m_client->connectToHost();
connect(m_client,SIGNAL(stateChanged(ClientState)),this,SLOT(slot_stateChanged()),Qt::UniqueConnection);
void slot_stateChanged()
{
qDebug() << "mqtt stsate" << _client->state();
}
解决方案
您在本地主机上使用代理,也许您应该在调用之前连接信号槽connectToHost()
尝试
m_client= new QMqttClient(this);
//connect signal slot
connect(m_client,SIGNAL(stateChanged(ClientState)),this,SLOT(slot_stateChanged()),Qt::UniqueConnection);
//connect to borker
m_client->setProtocolVersion(QMqttClient::MQTT_3_1_1);
m_client->setPort(1883);
m_client->setHostname("127.0.0.1");
m_client->setClientId("qt");
m_client->connectToHost();
void slot_stateChanged()
{
qDebug() << "mqtt stsate" << _client->state();
}
推荐阅读
- python - 将 Kubernetes Python 客户端与 v2 Docker 注册表一起使用
- python-3.x - Dataflow 无法将消息从 PubSub 推送到 BigQuery
- sql - 如何为每个新列值连续添加常量值?
- computer-vision - 使用openCv3进行立体校准后的图像校正
- sql - 有没有办法不在 select 子句中重复这个子查询?SQL 服务器
- scala - 为什么不能在 scala 上设置变量值?
- html - 为什么当我将宽度和高度设置为 100% 时元素会消失?
- php - 原则多对多加上其他实体
- regex - 如何在文件中提取字符串并替换特定的模式文本
- jdbc - 来自sql数据库的日期时间结果在clojure jdbc中不一样