@Bruceee

Как сохранять и проверять наличие cookies?

Есть приложение на Flask, в котором я отображаю данные со стороннего апи. Через request.Session() авторизовываюсь на сервере, в ответ получаю набор cookies.
Каким образом при авторизации сохранять полученные cookies в браузере, чтобы при повторном открытии сайта пользователю не пришлось авторизовываться заново?
И каким образом правильно организовать проверку наличия cookies (=авторизацию) при посещении сайта?

Если просто скрипт, то последовательность понятна, сначала получаю сессию:
session = requests.Session()
session.post('https://site.ru/auth/', {
    'email':   'name@gmail.com',
    'password': 'pass'
})


Затем от этой сессии делаю get-запрос:
method_info = session.get('https://site.ru/method/')

Не понятно, как сделать аналог session.get(), используя ранее сохраненные cookies и как проверить их наличие.
  • Вопрос задан
  • 584 просмотра
Решения вопроса 1
@pcdesign
Обычно этим занимаются модули, которые отвечают за авторизацию юзеров.

Но, если хотите на голом flask это реализовать. То тоже без проблем.
session['user_id'] = user_id
Таким образом записываются куки.
Когда нужно прочитать куки с юзерского браузера, то вот так:

user_id = session.get('user_id')
if not user_id:
    # Перекидываем на страницу с авторизацией
    redirect(url_for('login'))


Чтобы посмотреть что хранится в ваших локальных куках в браузере, можно использовать вот этот плагин
https://chrome.google.com/webstore/detail/editthis...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы