作为 ActiveMQ 订阅者,我如何才能获得消息发布者用户名或任何其他稍后使用的标识符?

As an ActiveMQ subscriber how can I get the message publisher username or any other identifier to be used later?

作为 ActiveMQ 订阅者,我想知道消息发布者的用户名或接收消息时的任何标识符。我正在使用 MQTT 协议,从 ActiveMQ 代理收到的消息流将根据提供的标识符进行保存。

我还有另外一个限制。授权发布者只会发布指定主题的数据,不会随数据提供任何额外的标识符值。

通常在这种情况下,您会在 activemq.xml 中设置 populateJMSXUserID="true",然后当您收到消息时,您只需查看 JMSXUserID 属性 .但是,由于 MQTT 不支持消息属性,这几乎肯定不适合您。

我认为您可能需要自己编写 broker plugin 来使用必要的标识符修改 MQTT 消息的 正文