假设我使用“clean session = false”连接到代理并开始接收事件,如果断开连接,理想情况下我的应用程序仍将接收连接数据。但如果应用程序崩溃了,我想重新开始并清理我的会话。
我可以在MQTT代理上清除我的会话并重新开始吗?
从文档中我得出结论,如果我想这样做,我需要做以下事情:
1-application start
2-connect使用“clean session = true”//这将导致任何当前会话及其数据被删除
3 - 与会话相关的每件事都从服务器中清除
4-disconnect
使用“clean session = false”进行5-connect并开始获取数据。
我从中得到了这个想法 http://www.hivemq.com/blog/mqtt-essentials-part-3-client-broker-connection-establishment
“如果clean session设置为true,则代理将不会存储任何内容 客户端也将清除之前的所有信息 持久性会议。“
这是清除上一个会话的正确方法吗?
答案 0 :(得分:4)
是的,这是清除客户端会话的唯一方法。