如何在 flask socket.io 服务器启动之前执行一些代码?
How to execute some code before flask socket.io server starts?
我有一个基于 flask-socketIO 的应用程序。我想在烧瓶服务器启动之前执行一些代码。
我的 app.py 文件如下所示:
from flask import Flask
from flask_cors import CORS
from flask_socketio import SocketIO
app = Flask(__name__)
app.config['SECRET_KEY'] = 'secret!'
socketio = SocketIO(app)
CORS(app)
@socketio.on('connect')
def test_connect():
print("Client connected")
@socketio.on('disconnect')
def test_disconnect():
print('Client disconnected')
if __name__ == "__main__":
socketio.run(app, debug=False, host='0.0.0.0')
当我运行程序:FLASK_APP=app.py flask run --host=0.0.0.0
,我得到控制台输出如下:* Serving Flask-SocketIO app "app"
然后一些客户端连接到我的应用程序并且它按我预期的那样工作,但我想看到 print
高于 socketio.run(app)
.
如何在服务器启动前执行代码?
使用<a href="http://flask.pocoo.org/docs/0.12/api/#flask.Flask.before_first_request" rel="nofollow noreferrer">before_fist_request</a>
@app.before_first_request
def your_function():
print("execute before server starts")
更新:
我有一个基于 flask-socketIO 的应用程序。我想在烧瓶服务器启动之前执行一些代码。 我的 app.py 文件如下所示:
from flask import Flask
from flask_cors import CORS
from flask_socketio import SocketIO
app = Flask(__name__)
app.config['SECRET_KEY'] = 'secret!'
socketio = SocketIO(app)
CORS(app)
@socketio.on('connect')
def test_connect():
print("Client connected")
@socketio.on('disconnect')
def test_disconnect():
print('Client disconnected')
if __name__ == "__main__":
socketio.run(app, debug=False, host='0.0.0.0')
当我运行程序:FLASK_APP=app.py flask run --host=0.0.0.0
,我得到控制台输出如下:* Serving Flask-SocketIO app "app"
然后一些客户端连接到我的应用程序并且它按我预期的那样工作,但我想看到 print
高于 socketio.run(app)
.
如何在服务器启动前执行代码?
使用<a href="http://flask.pocoo.org/docs/0.12/api/#flask.Flask.before_first_request" rel="nofollow noreferrer">before_fist_request</a>
@app.before_first_request
def your_function():
print("execute before server starts")
更新: