使用 Flask 服务器的 Python 脚本在 Windows 上退出需要很长时间

标签 python windows flask

我是 Python 新手。 作为项目的一部分,我尝试通过 Windows 命令行在本地部署 Flask 服务器。

我的Python版本是3.6.0。

代码:

from flask import Flask

app = Flask(__name__)

@app.route('/') def index():
    return '<h1>Hello World!</h1>'

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

问题:

这是关于在脚本运行时终止它。使用 python deploy.py 启动此脚本并点击 CTRL+C 将其关闭。

但是 - 如果我通过浏览器访问 '/' 路由一次或多次,稍后尝试以相同的方式终止脚本,那么大约需要 10 秒的时间直到它使用react并最终被杀死之前什么也没有。

为什么会发生这种情况?如何才能每次都立即关闭服务器,才能持续快速开发?

谢谢!!

最佳答案

如果您的目标是持续快速的开发,那么您可以更改 Flask 的配置。

解决您的问题的最佳解决方案是将DEBUG设置设置为True。如果DEBUG设置为True,那么Flask将在代码更改时自动重新加载服务器。

有几种方法可以做到这一点,但最简单的一种(因为你说你是初学者)是将 debug 参数传递给 app.run()

from flask import Flask

app = Flask(__name__)

@app.route('/') 
def index():
    return '<h1>Hello World!</h1>'

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

关于使用 Flask 服务器的 Python 脚本在 Windows 上退出需要很长时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49100872/

相关文章:

c++ - 如何在写入发生之前获得文件更改的通知?

python - Flask 重定向到 url 并传递查询字符串

python - 重定向后 Flask session 为空

python - Flask 在 try catch 运行时错误后无法引发 HTTP 异常

python - Pytest 正在搜索更高一级的 conftest

python - 如何使用 save_weights 保存的 tensorflow 模型进行加载和预测?

python - Azure Function Apps 中缺少 DLL

python - 错误系统调用spawn C :\Windows\system32\cmd. exe

c++ - Windows 堆分配调用堆栈 - 奇怪的调用堆栈

python - 如何找到列表中某个数字的平均值[python]