繁体   English   中英

Python Flask 应用程序抛出 RuntimeError:在请求上下文之外工作

[英]Python Flask app throwing RuntimeError: working outside of request context

大家好,我是 Python 新手,我正在尝试为一个简单的烧瓶应用程序构建一个装饰器。 我不断收到运行时错误:在请求上下文之外工作。 这是完整的堆栈跟踪,不知道我在这里做错了什么,可能是一个菜鸟错误

这是我的代码:

from flask import Flask, session
from flask import session
from functools import wraps

app = Flask(__name__)

def check_login(function):
    @wraps(function)
    def decorated_function(*args, **kwargs):
        if 'logged_in' in session:
            return function(*args, **kwargs)
        return 'You are NOT logged in. Please log in to continue'
    return decorated_function()

@app.route('/')
def default_route():
    return 'This is the default page.'

@app.route('/page1')
@check_login
def page_one():
    return 'This is page1.'

app.secret_key = 'Youwillneverguess'

if __name__=='__main__':
    app.run(debug=True)

正如我所说,我是 python 的新手,你们能给我的任何帮助将不胜感激

return decorated_function()

应该

return decorated_function

请注意第二个示例中缺少尾随括号。 在第一个示例中,您调用的是decorated_function而不是返回它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM