小编Sag*_*gre的帖子

Paho MQTT Python客户端:没有引发异常,只是停止

我尝试在python3中设置一个mqtt客户端。这不是我第一次这样做,但是我遇到了一个很奇怪的行为。尝试从其中一个回调函数(on_connect或on_message)调用包含错误的函数时,python不会引发异常(至少不打印异常),而只是在此停止。我把一个简短的例子捆绑在一起,再现了这种行为。

有人有主意吗?

import paho.mqtt.client as mqtt

import re
import os.path

import json
from termcolor import colored

client = mqtt.Client()

def func():
    test = 1 + "1"
    print("Should never reach that")

def on_connect(client, userdata, flags, rc):
    """Establishes connection to broker
    """
    print("Connected to broker with result code " + str(rc))
    client.subscribe("test")

def on_message(client,userdata,msg):
    print("Recieved message on " + msg.topic)
    params = {}
    if msg.topic == "test":

        print("Invoke func")
        func()

if __name__ == "__main__":
    client.on_connect = on_connect
    client.on_message = on_message

    client.connect("localhost",1883,60)

    client.loop_forever() …
Run Code Online (Sandbox Code Playgroud)

python exception mqtt paho

5
推荐指数
2
解决办法
1469
查看次数

标签 统计

exception ×1

mqtt ×1

paho ×1

python ×1