Курс 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. Установка и использование Telegram API в Python
  2. Преобразование чисел в восьмеричную строку
  3. Функция reduce() из модуля functools
  4. Работа со строками в Python.
  5. Работа с процессами в Python
  6. Конкатенация строк в Python
  7. Метод __int__ в Python
  8. Работа с YAML в Python
  9. Переворот строки с помощью срезов
  10. Множественное наследование в Python
  11. Асинхронное выполнение задач в процессах
  12. Автоматизация действий с Pyautogui
  13. Создание таблиц в терминале с PrettyTable
  14. Функциональное программирование.
  15. Оператор обр. импликации
  16. Введение в Python
  17. Генерация чисел с range()
  18. Сортировка списка по индексам
  19. Работа с кортежами в Python
  20. Измерение времени выполнения кода
  21. Операции с комплексными числами
  22. Запуск внешних программ с subprocess
  23. Установка Git и AWS CLI
  24. Распаковка значений в Python
  25. Область видимости переменных
  26. Протокол управления контекстом
  27. Обработка исключений в Python
  28. Метод rxor для операции побитового исключающего «или»
  29. Декоратор Ajax required
  30. Функция reversed() в Python
  31. Генератор данных в Keras
  32. Управление User-Agent в Python
  33. Метод radd для пользовательских чисел
  34. Комплексные числа в Python
  35. Вычисление натурального логарифма в NumPy
  36. Хэш-функции в Python
  37. Фильтры Pillow: NEAREST, BILINEAR, BICUBIC
  38. Удаление и повторная вставка ключа в OrderedDict
  39. Преобразование объекта в строку
  40. Метод Self в Python
  41. Переменная Шредингера
  42. Генерация ключей RSA
  43. Утечки переменных цикла в Python 3.x

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