Курс 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. Добавление элемента к кортежу
  3. Разделение функций на этапы
  4. Получение текущей директории
  5. Тип CodeType в Python.
  6. Декораторы с @wraps
  7. Присвоение значений переменным в Python
  8. Методы classmethod и staticmethod
  9. Основы слова
  10. Преобразование строки в число
  11. Работа с модулем random
  12. Метод get для словаря
  13. Модуль Operator в Python
  14. Python Тесты и Гайды
  15. Функции map, filter, reduce
  16. Вычисление времени выполнения
  17. Работа с комплексными числами
  18. Установка виртуального окружения Python
  19. Defaultdict в Python
  20. Библиотека schedule: планировщик задач
  21. Извлечение статей с newspaper3k
  22. Группы исключений в Python
  23. Работа с Colorama
  24. Тестирование модели в PyTorch
  25. Методы работы со строками в Python
  26. Функция zip() в Python
  27. Создание новых списков через list comprehensions
  28. Удаление falsy-значений из списка с помощью filter
  29. Глобальные переменные в Python
  30. Оператор морж в Python 3.8
  31. Функции высшего порядка в Python
  32. Python Метод del.
  33. Раздувающийся словарь в Python
  34. Форматирование заголовков в Python
  35. Enum в Python
  36. Удаление дубликатов из списка с помощью dict.fromkeys
  37. Отладчик pdb: начало работы
  38. Работа с базами данных SQLite
  39. Метод eq для сравнения объектов
  40. Очистка строки в Python
  41. Склеивание строк через метод join()
  42. Генерация QR-кодов с библиотекой qrcode
  43. Объединение Python и Shell
  44. Метод __irshift__ для Python
  45. Удаление элементов во время итерации
  46. Сложные типы данных в Python

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