paho MQTT on_message返回一条有趣的消息 - python

时间:2016-09-02 20:15:10

标签: python mqtt

请帮忙一些:) 我刚开始在python中使用MQTT。 当我运行以下程序时:

import paho.mqtt.client as mqtt 

def on_connect(client, userdata, flags, rc):
    print("Connected with result code "+str(rc))
    client.subscribe("watchdog/#")

def on_message(client, userdata, msg):
    message = str(msg.payload)
    print(msg.topic+" "+message)

client = mqtt.Client()
client.username_pw_set('XXXX', password='XXXXXXX')
client.on_connect = on_connect
client.on_message = on_message

client.connect("XXXX", XXXXX, 60)

client.loop_forever()

有效负载始终具有以下文本:

b'XXX'

XXX是消息,但b''部分始终显示。 一旦我在现成的客户端打开相同的消息,消息很好......所以我认为问题是在代码中,但我找不到。

任何帮助或指示?

谢谢!

1 个答案:

答案 0 :(得分:1)

正如Moses Koledoye所说,b是字节 - 这意味着你要打印的是一组字节的字符串版本。如果你将str(msg.payload)改为简单的msg.payload,你将获得不同的输出。

但是你还没有谈到消息有效负载是什么,所以你可能仍然会因为打印msg.payload而感到胡言乱语。例如,如果发送的消息实际上是一串字节......