MQTT设置自动重连后,无法自动订阅以前的主题
2026/6/10 10:54:55 网站建设 项目流程

一、业务场景

我们在使用MQTT的时候,在设置客户端参数的时候设置的自动重连属性,但是断开重连后无法订阅断开之前订阅的消息。

二、异常处理

在设置MQTT客户端参数配置的时候记得设置不要清除Session即可

/** * MQTT连接参数设置 */ private MqttConnectOptions mqttConnectOptions(String userName, String passWord) throws MqttException { mqttClient = new MqttClient(HOST, clientId, new MemoryPersistence()); MqttConnectOptions options = new MqttConnectOptions(); options.setUserName(userName); options.setPassword(passWord.toCharArray()); options.setConnectionTimeout(10);///默认:30 options.setAutomaticReconnect(true);//默认:false options.setCleanSession(false);//默认:true //options.setKeepAliveInterval(20);//默认:60 return options; }

设置AutomaticReconnect(true)和CleanSession(false),这样MQTT客户端在断开重连后还能继续收到之前的消息

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询