Курс 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"

  1. Python: отличительная особенность — отступы
  2. Иерархия классов в Python
  3. Измерение потребления памяти при сортировке
  4. Конкатенация строк с join() в Python
  5. Оператор assert в Python
  6. Глобальные переменные в Python
  7. Просмотр атрибутов и методов класса
  8. Создание списка через итерацию
  9. Копирование словарей и списков в Python
  10. Метод rsub в Python: расширение функциональности вычитания
  11. Переопределение метода __or__()
  12. Генераторы списков в Python
  13. Хранение данных
  14. Метод ifloordiv для пользовательских классов
  15. Создание и использование модулей в Python
  16. Работа с множествами в Python
  17. Аннотации типов в Python
  18. Метод сравнения объектов в Python
  19. Обработка исключений в Python
  20. Вывод букв строки в Python
  21. Отладка регулярных выражений в Python
  22. Метод get для словарей
  23. Установка Home Assistant
  24. Работа с срезами в Numpy
  25. Разбиение строки в Python
  26. Функции с необязательными аргументами
  27. f-строки в формате строк
  28. Открытие и запись файлов
  29. Работа с контекст-менеджером «with»
  30. Списковое включение в Python
  31. Динамическая типизация в Python
  32. Возврат нескольких значений
  33. Метод classmethod
  34. Кортежи в Python: особенности и преимущества
  35. Combobox в Tkinter
  36. Оператор in и not in в Python
  37. Функции высшего порядка в Python
  38. Функции range() в Python
  39. Фильтрация списка от «ложных» значений
  40. TON Smart Challenge #2: участие и подготовка
  41. Список и кортеж в Python
  42. Форматирование строк в Python
  43. Метод __float__ в Python
  44. Метод join() с набором
  45. Метод count в Python: почему count(», ») возвращает 4?
  46. Применение функций в Python
  47. Python Метод sleep() из time
  48. F-строки в Python 3.8
  49. Создание списков в Python
  50. Использование эмодзи в Python

Marketello читают маркетологи из крутых компаний