0

我有一个运行 mosquitto 的远程服务器。我可以使用 mosquitto_pub 和 mosquitto_sub 连接到该服务器并交换消息。如果我尝试使用一些带有 paho.mqtt.client 的 python 进行相同操作,我将无法连接。我的脚本一直在运行,但永远不会调用 on_connection 钩子。但是,相同的脚本可以在我的本地 mosquitto 服务器上完美运行。

连接问题的可能原因是什么?我怎样才能获得更多关于正在发生的事情的反馈?有什么建议么?

编辑:我添加了一个最小的代码示例

import paho.mqtt.client as mqtt


def on_connect(client, userdata, flags, rc):
    print("Yeeha")
    client.subscribe("botgrid/init", qos=2)

def on_message(client, userdata, msg):
    print(msg.payload)

client = mqtt.Client()
client.on_connect = on_connect
client.on_message = on_message
client.connect("localhost")
print("Waiting for connection...")
client.loop_forever()

编辑2:在玩耍时,我注意到用“test.mosquitto.org”替换“localhost”导致OSError: [Errno 101] Network is unreachable虽然我通过mosquitto_sub连接它没有问题

4

1 回答 1

0

这段代码会产生同样的问题吗?这可能相当于失败时的代码。

import socket

sock = socket.create_connection(("test.mosquitto.org", 1883))
于 2014-11-05T16:22:32.470 回答