【问题标题】:Flask Callback when Application Context is Available应用程序上下文可用时的 Flask 回调
【发布时间】:2017-04-19 23:01:59
【问题描述】:

我有一个函数,我想调用它来生成一组 url。但是,要完全生成 url(使用 url_for()),我需要有一个可用于 SERVER_NAME 设置的应用程序上下文。

我正在寻找一个不涉及显式设置SERVER_NAME 的解决方案,而是一个涉及在完整的应用程序上下文可用时立即运行我的函数的解决方案,即在app.run() 提供之后完整的应用程序上下文。我在 uWSGI 上运行这个应用程序,所以我正在寻找一个适用于 uWSGI 初始化的解决方案。

【问题讨论】:

    标签: python flask uwsgi


    【解决方案1】:

    您可以使用before_first_request 挂钩在应用程序上下文中以及在服务器完全初始化后运行一次代码。

    【讨论】:

    • 我假设服务器启动后没有等效的回调吗? before_first_request 通常应该可以工作,但是此代码包含一些性能密集型部分。我真的不想在任何常规请求流量期间运行它。
    • 我不知道,但一般来说,性能密集型代码不应依赖于 Web 服务器,因此您可能需要重新考虑您的设计并考虑后台队列或计划作业。
    猜你喜欢
    • 1970-01-01
    • 2017-06-08
    • 2015-08-31
    • 2016-05-16
    • 2011-11-10
    • 2016-03-11
    • 2016-07-12
    • 2018-08-19
    • 1970-01-01
    相关资源
    最近更新 更多