【发布时间】:2021-07-14 12:22:26
【问题描述】:
我是 Flask 和 flask-socketio 的新手。
我首先从Flask官方docs制作了教程应用。
我关注this 使用flask-socketio 制作一个简单的聊天应用程序。
我需要的是 Flask 教程中的身份验证系统和 SocketIO 教程中的简单聊天功能。
Flask 教程在__init__.py 的create_app 方法中运行Flask 应用程序。
__init__.py:
def create_app(test_config=None):
# create and configure the app
app = Flask(__name__, instance_relative_config=True)
app.config.from_mapping(
SECRET_KEY='dev',
DATABASE=os.path.join(app.instance_path, 'flaskr.sqlite'),
)
# ...
return app
SocketiIO 教程只有一个运行 SocketIO 应用程序的main.py 文件。
main.py:
app = Flask(__name__)
app.config['SECRET_KEY'] = 'vnkdjnfjknfl1232#'
socketio = SocketIO(app)
@app.route('/')
def sessions():
return render_template('session.html')
# ...
if __name__ == '__main__':
socketio.run(app, debug=True)
我已经阅读了很多关于将 flask-socketio 与已经制作的 Flask 应用程序集成的问题,但他们都尝试使用 main.py 文件进行集成,您可以将 socketio.run() 方法放在 @987654333 中运行@。
是否可以在同一个应用程序中同时运行 http 服务器和套接字服务器,从 create_app 方法初始化应用程序?
【问题讨论】: