私はflask-socketIOに基づいたアプリケーションを持っています。フラスコサーバーの起動直前にコードを実行したい マイapp.pyファイルは次のようになります。FLASK_APP=app.py flask run --host=0.0.0.0
次のように、私はコンソール出力を取得::私はプログラムを実行するとフラスコsocket.ioサーバーが起動する前にコードを実行するには?
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')
* Serving Flask-SocketIO app "app"
その後、いくつかのクライアントは私のアプリに接続して、私が期待どおりに動作しますが、I socketio.run(app)
を上回るprint
を見たいと思っています。
サーバーの起動前にコードを実行するにはどうすればよいですか?
、それはまだ実行されませんか? Pythonはインタプリタ言語なので、印刷する必要があります。 – crazyglasses
これは実行されませんが、インポートの下に(コード)を置くとサーバー起動前にコードを実行できますが、pythonic解決策ではないと思います。 – trojek
いいえPythonの後に追加された正しい方法はありません。あなたがカスタム関数を作成し、 'socket.run()'の前に呼び出すことができるかどうかを確認してください。 – crazyglasses