Я пытаюсь сделать что-то в этом роде:
Код: Выделить всё
from flask import Flask, render_template, redirect, url_for
from flask.ext.socketio import SocketIO
app = Flask(__name__)
socketio = SocketIO(app)
@app.route('/start')
def start():
return render_template('start.html')
@app.route('/new_view')
def new_view():
return render_template('new_view.html')
@socketio.on('change_view')
def change_view(message):
return redirect(url_for('new_view'))
if __name__ == "__main__":
socketio.run(app, host='127.0.0.1', port=8080)
По сути, я хочу, чтобы он перенаправлялся, если он получает сообщение «change_view» от клиента. Прямо сейчас он переходит к функцииchange_view() после того, как я нажимаю кнопку, которая запускает вызов socket.emit('change_view', message), так что эта часть работает. Он просто не перенаправляется и не попадает в функцию new_view() (т. е. если я помещаю оператор печати в new_view(), он не печатается). Но это также не дает мне никаких ошибок. Я новичок в сокетах, поэтому предполагаю, что происходит какое-то фундаментальное недоразумение.
Подробнее здесь:
https://stackoverflow.com/questions/238 ... n-in-flask