Глобальные переменные в веб-приложении python flask

Я реализовал веб-сервер с использованием python flask и разместил его на pythonanywhere.com... Я использовал глобальные переменные в своей реализации для обработки сеансов входа в систему. Например-

TOKENS = {"OAUTH_TOKEN": ""}
if(TOKENS['OAUTH_TOKEN']) == "":
   authorized = Flase
else:
   authorized = True

Но проблема в том, что когда пользователь вошел в систему и авторизовался, второй пользователь становится авторизованным пользователем. pythonanywhere использовал WSGI в качестве сервера для запуска веб-приложения python flask. Как я могу обрабатывать каждого пользователя как отдельные потоки?


person Tharinda Ehelepola    schedule 23.01.2016    source источник


Ответы (2)


Вы можете написать свой код для создания входа в систему, но это не очень безопасно. Необходимо установить учетные данные для входа в сеанс и загрузить пользователя с каждым запросом, загрузить его в каждом запросе и установить объект g.

#login
session['user'] = user_id


@app.before_request
def before_request():
    current_user = user_obj
    g.user = current_user

Вы можете использовать это руководство для создания хорошего приложения для входа.

person rezakamalifard    schedule 23.01.2016

Вы можете использовать Flask-Login. Он может обрабатывать большинство типичных действий по управлению пользователями «из коробки».

person rubikonx9    schedule 23.01.2016