Курс 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. Работа с базами данных SQLite
  2. Получение списка файлов в директории с использованием os
  3. Работа с itertools
  4. Функция eval() в Python
  5. Библиотека sh: использование команд bash в Python
  6. Установка Python — Простое руководство
  7. Форматирование строк в Python
  8. Итерация по итерируемым объектам
  9. Управление контекстом с помощью декоратора contextmanager
  10. Генераторы данных
  11. Списковые включения в Python
  12. Отправка HTTP-запросов в Python
  13. Форматирование данных с помощью pprint
  14. Протокол управления контекстом
  15. Импортирование в Python
  16. Получение текущей даты и времени с помощью datetime
  17. Основы работы со строками в Python
  18. Проверка списка: any() и all()
  19. Мониторинг памяти с Pympler
  20. Отправка HTTP-запросов с User-Agent
  21. Поиск самого частого элемента
  22. Конвертация коллекций в Python
  23. Округление чисел с помощью round
  24. Курс по дообучению ChatGPT
  25. Закрытие файла в Python
  26. Обмен переменными в Jupyter
  27. Конвертация текстовых чисел с помощью Numerizer
  28. Безопасный доступ к значениям словаря
  29. Списки в Python: синтаксис представления
  30. Метод join() для объединения элементов в строку.
  31. Форматирование строк в Python
  32. Использование функции product
  33. Проверка элементов списка условием
  34. ChainMap избыточные ключи
  35. Управление ресурсами с контекстными менеджерами
  36. Управление виртуальными средами в Python
  37. Форматирование данных с помощью pprint
  38. Создание таблиц в Python с PrettyTable
  39. Анонимные функции Lambda
  40. Список импортированных модулей в Python
  41. Работа со списками
  42. Передача аргументов через **arguments
  43. Удаление ключей из словаря
  44. Преобразование текста в нижний регистр
  45. Обмен данными с asyncio.Queue

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