2017-04-19 134 views
1

我有一個函數可以生成一組url。但是,要完全生成網址(使用url_for()),我需要有一個可用於SERVER_NAME集的應用程序上下文。應用程序上下文可用時的Flask回調函數

我找不涉及設置SERVER_NAME明確的解決方案,而是一個解決方案,將盡快作爲一個完整的應用程序上下文是可用的,這是涉及運行我的功能,app.run()後提供了一個完整的應用程序上下文。我在uWSGI上運行這個應用程序,所以我正在尋找一個適用於uWSGI初始化的解決方案。

回答

1

您可以使用before_first_request掛鉤在應用程序上下文中以及服務器完全初始化後運行一次代碼。

+0

我假設在服務器啓動後沒有等效的回調? before_first_request通常應該可以工作,但是此代碼包含一些性能密集型節。我不想在任何常規請求流量中運行它。 – jab

+0

不是我所知道的,但總的來說,性能密集型代碼不應該依賴於Web服務器,因此您可能需要重新考慮您的設計並考慮後臺隊列或預定作業。 –

相關問題