MQTT连接后收不到消息是怎么回事?

♫东芳 阅读 66

我用Paho.js连上了本地Mosquitto服务器,订阅了test/topic,但发布消息后回调没触发。连接状态显示已连接,也没报错。

这是我的订阅代码:

const client = new Paho.MQTT.Client('localhost', 9001, 'clientId');
client.onConnectionLost = (responseObject) => {
  console.log('连接断开:', responseObject.errorMessage);
};
client.onMessageArrived = (message) => {
  console.log('收到消息:', message.payloadString);
};
client.connect({
  onSuccess: () => {
    client.subscribe('test/topic');
  }
});

用另一个客户端往test/topic发消息,这边完全没反应,是不是漏了什么配置?

我来解答 赞 4 收藏
二维码
手机扫码查看
1 条解答
小美丽
小美丽 Lv1
Mosquitto默认禁止匿名访问,在配置文件里加一行 allow_anonymous true 重启服务就行。如果还不行,检查发布端用的topic是否完全一致,包括大小写和前后斜杠。
点赞
2026-03-12 11:00