2

我使用 node.js 服务器将数据发送到 python 客户端。Python 的控制台显示接收数据良好,但我在文档中找不到在 Python 客户端中使用它们的方法。

在 Python 的脚本控制台中:

engineio.client - INFO - Received packet MESSAGE data 2/flowRecognizedFairy,["myevent",{"spoken":"i'm speaking now"}]

我尝试了API 文档中的几个示例!

@sio.event
def message(data):
    print('I received a message!')

@sio.on('my message')
def on_message(data):
    print('I received a message!')

@sio.event
async def message(data):
    print('I received a message!')

我无法在控制台中打印任何内容。以下代码有效:

@sio.on('connect')
def on_connect():
    print('--> connection established')


@sio.on('disconnect')
def on_disconnect():
    print('--> disconnected from server')

没有错误信息。我希望首先使用打印功能打印接收数据,并将它们与 python 脚本中的其他功能一起使用。

任何技巧或想法?

4

1 回答 1

2

您的服务器正在一个名为/flowRecognizedFairy. 您的处理程序应设置为使用该命名空间。

@sio.on('connect', namespace='/flowRecognizedFairy')
def on_connect():
    print('--> connection established')

@sio.on('disconnect', namespace='/flowRecognizedFairy')
def on_disconnect():
    print('--> disconnected from server')

@sio.event(namespace='/flowRecognizedFairy')
def message(data):
    print('I received a message!')

@sio.on('my message', namespace='/flowRecognizedFairy')
def on_message(data):
    print('I received a message!')

@sio.event(namespace='/flowRecognizedFairy')
async def message(data):
    print('I received a message!')
于 2019-09-04T07:14:05.367 回答