gpt4 book ai didi

flask - 应用程序和请求上下文之间有什么区别?

转载 作者:行者123 更新时间:2023-12-03 15:33:52 25 4
gpt4 key购买 nike

Flask 文档说有 2 个本地上下文:应用程序上下文和请求上下文。两者都是根据要求创建的,并在完成后拆除。

那么,有什么区别呢?每个用例是什么?仅创建其中之一时是否有任何条件?

最佳答案

Both are created on request and torn down when it finishes.



在请求生命周期中确实如此。 Flask 创建应用上下文、请求上下文、做一些魔术、销毁请求上下文、销毁应用上下文。

应用程序上下文可以在没有请求的情况下存在,这就是您拥有两者的原因。例如,如果我从 shell 运行,我可以创建 app_context ,没有请求并且可以访问“current_app”代理。

分离关注点并为您提供不创建请求上下文的选项是一个设计决策。请求上下文是昂贵的。

在旧的 Flask (0.7?) 中,您只有请求上下文并创建了 current_app使用 Werkzeug 代理。所以应用程序上下文只是创建一个模式。

一些关于 appcontext 的文档,但您可能已经阅读过它: http://flask.pocoo.org/docs/appcontext/

关于flask - 应用程序和请求上下文之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20938619/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com