我正在使用 Flask 和 socketio 制作一个新应用程序。简化后的代码是这样的:

socketio = SocketIO(app)

@socketio.on('connect', namespace='/test')
def test_connect():
    print('Client connected')
    emit('my response', {'data': 'User Connected'}, broadcast = True)


if __name__ == '__main__':
    socketio.run(app, '0.0.0.0', 8080)

我不确定如何从另一个类导入“处理程序:@socketio.on('connect', namespace='/test')”,这样我就不会重载主类。

我想蓝图可能是一个解决方案,但我只找到了如何将它们与“路线”一起使用。我不确定这是否适用于套接字。

有人可以帮我吗?谢谢大家

最佳答案

您可以这样做的方法是将 socketio.on() 函数移动到不同的模块。您提到了类,但这些实际上是函数,构建应用程序的方法是将应用程序的不同部分分成模块或包。

看看我创建的 this example,它演示了一种构建使用 Flask-SocketIO 的 Flask 应用程序的方法。

关于python - 从 Flask 中的另一个类导入 @socketio.on(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25180730/

10-13 04:08