MQTT在春季与Rest一起发布/订阅

时间:2018-08-02 23:57:59

标签: java spring mqtt

我需要编写一个API,当客户端调用该API时,它将在MQTT的请求主题上发布消息,并在响应主题上等待响应。如果响应主题未返回任何内容,则API应该返回默认响应。

我的问题是在消费来自主题的消息时。我可以发布,但是如何等待特定主题的响应(对使用消息的响应)并将其作为响应发送,或在特定时间之后发送API的默认响应。

我正在使用Java的Spring 4,

1 个答案:

答案 0 :(得分:0)

您可以执行以下步骤:

  1. 您的HTTP服务器接收请求并将具有唯一相关ID的请求消息发布到MQTT,并创建事件循环 E以等待消息响应

  2. 消费者C1使用该消息并进行处理,然后向MQTT响应(发布)具有相同相关ID的消息

  3. HTTP服务器中的
  4. 用户C2使用该响应消息并将其发送给事件循环E

  5. 事件循环E中断循环并向HTTP客户端返回消息响应