Python socket.io客户端事件

Python socket.io client events

我正在使用此Python socket.io客户端库。
这是用于实例化并连接到套接字io服务器的python代码的一部分:

1
2
3
4
5
6
7
8
9
10
11
12
13
import socketio

sio = socketio.Client()
logger.info('Created socketio client')
sio.connect('https://server.com/socket.io/')

@sio.event
def connect():
    logger.info('connected to server')

@sio.event
def disconnect():
    logger.info('disconnected from server')

打印出记录器消息"已创建socketio客户端",但未显示"已连接到服务器"消息。但是,在手动关闭服务器连接的过程中,激活了" disconnect"回调……这里出了什么问题?我在这里使用nginx代理fyi。


好吧,对于初学者来说,您是在定义处理程序之前进行连接的。连接后,您也没有执行任何操作。请尝试以下版本:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import socketio

sio = socketio.Client()
logger.info('Created socketio client')

@sio.event
def connect():
    logger.info('connected to server')

@sio.event
def disconnect():
    logger.info('disconnected from server')

sio.connect('https://server.com/socket.io/')
sio.wait()

最后的wait()调用可确保主线程阻塞,直到客户端断开连接为止。