Flask-Login显示401而不是重定向到登录视图

时间:2015-11-15 19:43:53

标签: python flask flask-login

使用Flask-Login,我想要求登录一些视图。当我尝试访问用@login_required修饰的视图时,我收到401消息而不是登录页面。如何正确设置?

from flask_login import LoginManager, login_required, login_user

login_manager = LoginManager()
login_manager.init_app(app)

@login_manager.user_loader
def load_user(user_id):
    return User.get(user_id)

@app.route('/login', methods=['GET', 'POST'])
def login():
    if request.method == 'POST':
        # authenticate user from form
        login_user(user)
        return redirect(url_for('index'))

    return render_template('login.html')

@app.route('/protected')
@login_required
def protected():
    return 'Hello, World!'

1 个答案:

答案 0 :(得分:3)

您尚未告知Flask-Login使用哪种视图来显示登录表单,因此默认为通用401错误。从docs:“如果未设置登录视图,则会因401错误而中止。”

login_manager.login_view = 'login'