12

我在 ubuntu 上使用 eclipse paho 客户端,并尝试将纬度、经度和时间戳信息作为 JSON 格式发送到 MQTT 代理。我怎么做?

我找到了这篇文章,但它并不完整。

4

3 回答 3

18

您只需将 JSON 对象创建为字符串,然后对该字符串调用 getBytes() 以获取字节数组以用作消息中的有效负载。

 MqttMessage message = new MqttMessage();
 message.setPayload("{foo: bar, lat: 0.23443, long: 12.3453245}".getBytes());
 client.publish("foo", message);
于 2014-05-30T08:08:07.117 回答
7

我不知道,但我使用他的:

#!/usr/bin/python
import json
import paho.mqtt.client as mqtt


send_msg = {
        'data_to_send': variable1,
        'also_send_this': variable2
}

client.publish("topic", payload=json.dumps(send_msg), qos=2, retain=False)
于 2017-02-24T15:15:13.480 回答
0

如果您使用的是 JavaScript,则可以使用:

client.publish("foo", JSON.stringify({"foo": bar, "baz": 123})) // on sender side, and

JSON.parse在接收端。

于 2021-05-24T06:43:47.283 回答