Przeglądaj źródła

MQTT 发布小时是 setRetained 设置为false ,不然每次重连时,都会接收到以前发布的消息

lilt085163@126.com 3 lat temu
rodzic
commit
93c890b5c3

+ 2 - 2
src/main/java/com/care/mqtt/tool/MqttDataConnector.java

@@ -156,9 +156,9 @@ public class MqttDataConnector {
         //2:一次,即:=1       一直发送确保消费者只能收到一次;发送失败会缓存下来 。
         mqttMessage.setQos(0);
         //消费者断开连接后是否接受离线消息
-        mqttMessage.setRetained(true);
-        mqttClient.publish(publicLiveTopic,mqttMessage);
+        mqttMessage.setRetained(false);
         logger.info("topic:{} send  content {} ",publicLiveTopic,data);
+        mqttClient.publish(publicLiveTopic,mqttMessage);
         logger.info("topic:{} send  dataSize {}kb ",publicLiveTopic,data.length()/1024.0);
 
     }