MQTT(這裏採用的V2版本)發佈消息的常見方法:
1、通過MQTT客戶端連接MQTT服務器,建立長連接,通過接口發佈消息
最常見的客戶端:
<dependency> <groupId>org.eclipse.paho</groupId> <artifactId>org.eclipse.paho.client.mqttv3</artifactId> <version>1.1.0</version> </dependency>
發佈接口示例(連接過程省略...)
//發佈消息 try { MqttMessage message = new MqttMessage(); message.setQos(1); //保證消息能到達一次 message.setRetained(true); message.setPayload("我喜歡做測試,咋地了捏".getBytes()); client.publish(publishTopic,message); } catch (MqttException e) { System.out.println("publish fail"); e.printStackTrace(); }
2、通過MQTT提供的Rest接口發佈消息
MQTT官網介紹:https://docs.emqx.io/broker/v2/cn/rest.html?highlight=post
postMan模擬
basic auth鑑權
發佈的body