Flask .session keyError - PullRequest
       30

Flask .session keyError

0 голосов
/ 06 апреля 2020

У меня проблема с KeyError при попытке получить доступ к чему-либо из flask.session, и я ставлю под сомнение мою реализацию.

По сути, у меня есть запрос PUT, который выглядит примерно так

def auth():
    flask.session["access"] = "Admin"

blueprint.before_request(auth)
def put(...):
    ...
    if flask.session["access"] == "Admin":
        do_something_cool()

У меня возникает проблема с KeyError, и я подозреваю, что это как-то связано с использованием blueprint?

Спасибо

1 Ответ

0 голосов
/ 07 апреля 2020

flask.session недоступен вне контекста запроса. Вам не хватает декоратора, чтобы зарегистрировать свое мнение:

import flask

bp = flask.Blueprint('auth', 'auth')

@bp.before_request
def auth(): flask.session['access'] = 'Admin'

@bp.route('/something')
def put():
    if flask.session['access'] == 'Admin': do_something_cool()
...