[英]How can I send a list using MQTT
d = random,randint(1,30)
data = [d, strftime("%Y%m%d %H%M%S", gmtime())] #random num , system time
client.publish("gas", str(data)]
這是我的ver2 python代碼的一部分。 我正在嘗試使用MQTT發送列表。 但是,如果我寫字節數組而不是第三行的str,它會說“ ValueError:字符串的大小必須為1”。 所以我寫了str然后將其設置為字符串類型。我可以發送一個不是字符串類型的公正列表。
MQTT消息有效負載只是字節數組,沒有固有格式。 只要事務的兩端都使用相同的字符編碼,字符串就可以正常工作。
如果要發送結構化數據(例如ost),則需要確定一種編碼該結構的方法,以便接收消息的代碼將知道如何對其進行重構。
當前解決此問題的常用方法是將結構編碼為JSON,但是XML或類似protobuffers的東西也是不錯的選擇。
以下問題有一些將Python列表轉換為JSON對象的示例
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.