Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flask 带烧瓶的SocketIO用于网站的特定页面_Flask_Flask Socketio - Fatal编程技术网

Flask 带烧瓶的SocketIO用于网站的特定页面

Flask 带烧瓶的SocketIO用于网站的特定页面,flask,flask-socketio,Flask,Flask Socketio,我有一个flask网站,在不同的路线上有不同的应用程序: @app.route('/') def index(): ...... @app.route('app1') def app1(): ...... return render_template('app1.html') @app.route('app2') def app1(): ...... return render_template('app2.html') ...... app =

我有一个flask网站,在不同的路线上有不同的应用程序:

@app.route('/')
def index():
    ......

@app.route('app1')
def app1():
    ......
    return render_template('app1.html')

@app.route('app2')
def app1():
    ......
    return render_template('app2.html')

......

app = Flask(__name__)

if __name__ == "__main__":
    app.run()
我的问题是,如果用户转到另一个app3页面,那么如何使用SocketIO(因为该网页将处理实时双向通信),但不改变现有结构(其他页面不使用socket)

我看到文档正在使用:

app = Flask(__name__)
app.config['SECRET_KEY'] = 'secret!'
socketio = SocketIO(app)

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

使用套接字运行所有应用程序。

您所做的是正确的。只有当客户端连接到Socket.IO服务器时,才会激活该服务器。如果您的
app1
app2
页面未启动连接,则Socket.IO服务器将通过这些连接到Flask,并且仅与
app3
页面上的客户端进行连接,假设您将Socket.IO客户端添加到该页面