通过MQTT接收JSON文件



我对microython很陌生,目前我正在学习通过MQTT接收JSON,我发现了一段代码,可以自动将接收到的JSON文件保存到字典中。我很确定我什么都懂,除了第三行。有人能帮我理解吗?(此外,这真的可行吗?(

def on_message(client, userdata, msg):
topic=msg.topic
m_decode=str(msg.payload.decode("utf-8","ignore"))
print("data Received type",type(m_decode))
print("data Received",m_decode)
print("Converting from Json to Object")
m_in=json.loads(m_decode)
print(type(m_in))
print("broker 2 address = ",m_in["broker2"])

如果第3行所指的是:

m_decode=str(msg.payload.decode("utf-8","ignore"))

数据以一系列字节或1和0的形式接收,这些字节可用于表示您想要的任何信息。

UTF-8是一种标准,规定某些1和0的字符串应该代表人类可读的文本字符。

https://en.wikipedia.org/wiki/UTF-8

因此,decode函数将1和0转换为UTF-8文本字符串,供人眼阅读。

https://www.pythoncentral.io/encoding-and-decoding-strings-in-python-3-x/

最新更新