mqtt js 在订阅时获取频道值

mqtt js get channel value at subscribe

我在 Web 应用程序中使用 Aedes 作为代理,MQTT.js 作为客户端。

启动时我连接到代理并订阅了一些频道。

我想知道是否有办法以 MQTT 方式获取之前的最后一条消息。

这里有两种不同的东西。

  1. 保留的消息。这是发布者在消息上设置的标志,它告诉代理保留消息,并且在发送任何新消息之前首次订阅该主题时始终将任何给定主题的最后保留消息传递给客户端。最后一条保留的消息将始终被在该主题上发布的下一条消息替换,该主题也设置了保留标志。您可以阅读有关保留消息的更多信息 here

  2. 排队的邮件。如果客户端以大于 QOS 0 订阅主题,则代理将在客户端离线时将发送给该​​客户端的消息排队。客户端需要使用相同的客户端 ID 并将 cleanSession 标志设置为 false 来重新连接。您可以阅读有关持久会话和排队消息的更多信息 here