【发布时间】:2016-01-19 07:50:26
【问题描述】:
在使用带有 nodejs 的 npm mqtt 时遇到问题。服务器订阅主题'alert/userId' 以接收来自客户端的数据发布,然后服务器取消订阅该主题。每次订阅和取消订阅后,消息都是重复的。客户端发送1条消息;服务器收到多条消息。
【问题讨论】:
-
请使用发布和订阅代码更新问题,以帮助我们准确了解此处发生的情况
在使用带有 nodejs 的 npm mqtt 时遇到问题。服务器订阅主题'alert/userId' 以接收来自客户端的数据发布,然后服务器取消订阅该主题。每次订阅和取消订阅后,消息都是重复的。客户端发送1条消息;服务器收到多条消息。
【问题讨论】:
您是如何发布消息的?您是否将保留标志设置为 true?
如果是这样,则每次客户端连接到代理时都会传递此消息,直到它被清除(通过向同一主题发送空负载消息)
【讨论】:
使用 QoS 1 发布意味着消息将被传递至少一次。然后,任何订阅者都可以多次收到相同的消息。
如果您希望消息只发送一次,您可能希望使用 QoS 2。
【讨论】: