开发服务器

从Flask 0.11开始,有多种内置方法来运行开发服务器。最好的是flask命令行实用程序,但您也可以继续使用Flask.run()方法。

命令行

强烈建议用于开发的flask命令行脚本(Command Line Interface),因为它由于加载应用程序的方式提供了优异的重载体验。基本用法如下:

$ export FLASK_APP=my_application
$ export FLASK_DEBUG=1
$ flask run

这将启用调试器,重新加载器,然后在http:// localhost:5000 /上启动服务器。

可以通过向run选项传递更多参数来控制服务器的各个功能。例如,可以禁用重装器:

$ flask run --no-reload

在代码中

启动应用程序的另一种方法是通过Flask.run()方法。这将立即启动本地服务器,与flask脚本完全相同。

例:

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

这对于常见的情况很好,但它不能很好地用于开发,这是为什么从Flask 0.11起,推荐flask方法。这样做的原因是,由于重载机制如何工作,有一些奇怪的副作用(如执行某些代码两次,有时崩溃没有消息或死亡当语法或导入错误发生时)。

然而,它仍然是调用非自动重新加载应用程序的完全有效的方法。