Курс Python → Управление сессиями в Python
Для управления сессиями в Python можно использовать встроенный модуль session. При каждом запросе сервера создается уникальный идентификатор сессии, который сохраняется в куки или передается через URL. Этот идентификатор позволяет связать все запросы пользователя в рамках одной сессии.
Для сохранения данных между запросами в рамках одной сессии можно использовать словарь session, который доступен во всех обработчиках запросов. Данные, сохраненные в этом словаре, будут доступны до завершения сессии или до очистки кэша.
Пример использования сессий в Flask:
from flask import Flask, session, redirect, url_for, request
app = Flask(__name__)
app.secret_key = 'super secret key'
@app.route('/')
def index():
if 'username' in session:
return 'Logged in as %s' % session['username']
return 'You are not logged in'
@app.route('/login', methods=['POST'])
def login():
session['username'] = request.form['username']
return redirect(url_for('index'))
@app.route('/logout')
def logout():
session.pop('username', None)
return redirect(url_for('index'))
if __name__ == '__main__':
app.run()
В данном примере при успешном входе пользователя данные о его имени сохраняются в сессии и доступны на всех страницах, пока пользователь не выйдет из системы. При выходе из системы данные удаляются из сессии.
Другие уроки курса "Python"
- UserList в Python: Описание и примеры использования
- Определение индекса элемента списка
- Обновление ключей в Python
- Переопределение метода xor в Python
- Особенности множеств в Python
- Инвертирование словаря
- Проверка типов с помощью isinstance
- Переопределение метода sub
- Модуль xkcd: добавление юмора в Python
- Определение наиболее частого элемента с помощью collections.Counter
- Работа с f-строками 2.0
- Преобразование данных в Python
- Тестирование с responses
- Переопределение метода delitem в Python
- Руководство по Pymorphy2
- Поиск индекса элемента в списке
- Использование эмодзи в Python
- Отрицательные индексы списков в Python
- Сортировка и обратный порядок
- Defaultdict в Python
- Модуль subprocess: запуск внешних команд
- Оператор in в Python
- Создание OrderedDict
- Улучшение читаемости кода в Python
- Создание списков в Python
- Замена подстроки
- Получение комбинаций в Python
- Удаление дубликатов из списка
- Генерация случайных чисел в Python
- Concrete Paths — метод .with_suffix()
- Работа с модулем bisect
- Работа со временем в Python
- Работа с CSV файлами в Python
- Преобразование вложенного списка
- Декораторы в Python
- Работа с deque в Python
- ROT13 Шифр Цезаря в Python
- Создание объекта времени
- Методы HTTP запросов в Flask
- Декораторы с @wraps
- Итераторы в Python
- Измерение времени выполнения кода
- UserString в Python
- Объединение кортежей в Python
- Поиск с библиотекой Google
- Удаление дубликатов из списка с помощью dict.fromkeys
- Динамическая типизация в Python















