Как сохранить и показать текущее состояние процесса, используя flask socketio, если браузер закрыт (сеанс) - PullRequest
0 голосов
/ 10 февраля 2020

Требование: -

работает над проектом с flask.

flask socketIo ... и я почти завершил проект. Теперь я хочу реализовать кое-что, что очень распространено в веб-разработке.

Прямо сейчас я могу показать состояние фоновых задач в пользовательском интерфейсе, и события отправляются в specfi c (request.sid). Теперь, если пользователь случайно закроет свой браузер и вернется на ту же страницу, по понятной причине он не увидит ничего (что происходило в существующем сеансе), кроме начальной страницы, которую я хочу, если пользователь снова заходит на страница, она должна быть перенаправлена ​​на страницу текущего состояния.

Я пытаюсь достичь чего-то точно такого же, как любые облачные решения. Например, если я создаю экземпляр Ec2 из консоли и закрываю его. После повторного открытия он все равно покажет существующие операции с текущим состоянием (выполняется, ожидает) и т. Д. c .. Как этого добиться?

1 Ответ

0 голосов
/ 11 февраля 2020

если пользователь случайно закрыл свой браузер и вернулся на ту же страницу, по понятной причине он ничего не увидел

Это не совсем очевидно. Если ваш пользователь вошел в ваше приложение, вы его знаете, и, вероятно, вы также знаете, какую фоновую задачу ожидает каждый пользователь. Когда пользователь вернется на страницу и снова войдет в систему, вы сможете найти состояние любых фоновых задач, связанных с пользователем.

Единственная ситуация, в которой вы не сможете это сделать, - это если вы не требуете, чтобы ваши пользователи проходили аутентификацию, и в этом случае, когда пользователь заходит на вашу страницу во второй раз, вы не можете узнать, что это тот же самый пользователь, который закрывал страницу раньше. Решением этой проблемы является использование аутентификации, чтобы ваши пользователи всегда были известны серверу.

...