emqx可以实现图片文件的传输吗?

环境信息

  • EMQ X 版本:
  • 操作系统及版本:
  • 其他

问题描述

emqx可以实现图片文件的传输吗?

配置文件及日志

你好,可以直接将文件内容写入mqtt的payload部分就可以了

你好,payload是json格式吧

https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901119
payload是一个二进制流,json只是其中一种可能

public void pub(String topic,String filename) {
	try {
		MqttMessage mqttMessage = new MqttMessage();
		//File f = new File("src/stream",filename);
		File f = new File(filename);
		FileInputStream fis = new FileInputStream(filename);
		byte[] all = new byte[(int)f.length()];
	
		int r = fis.read(all); 
		System.out.println("-==total read=" + r);
		mqttMessage.setPayload(all);

		client.publish(topic, mqttMessage);
	} catch (Exception e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
}

这个问题应该换做是mqtt可以传图片吗?
答案是:可以的。
但应该不是mqtt的强项和出发点、也就不是emqx的强项和出发点