首页 > 解决方案 > 为什么 PyCharm 不在 HTTPS 中运行烧瓶 webapp?

问题描述

我在我的应用程序末尾包含了以下代码行:

if __name__ == "__main__":
    app.run(ssl_context="adhoc")

但是当我在 PyCharm 中运行项目时得到的输出是

 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

但是,当我使用命令 python app.py 从终端(Alt+F12)运行应用程序时,我得到了输出

* Running on https://127.0.0.1:5000/ (Press CTRL+C to quit)

这背后的原因是什么?有没有办法使用 PyCharm 运行它?每次输入命令是相当乏味的。

标签: pythonflaskpycharm

解决方案


所以首先:

# get app from somewhere
app = create_app()

if __name__ == "__main__":
    app.run(ssl_context="adhoc")

它仅在您直接启动脚本(如python main.py. 在这种情况下,__name__等于"__main__"

其次,当您使用flask run我认为是您的 IDE 使用的方式运行您的应用程序时,if条件将是False,因此该行app.run(ssl_context="adhoc")甚至不会运行。


最后,如果你想在生产中使用它,你应该app直接配置。或者使用反向代理服务器,例如nginx. 其实我推荐后一种方法。


推荐阅读