Flask1.0.2系列(十八) 开发服务器

英文原文地址:http://flask.pocoo.org/docs/1.0/server/

若有翻译错误或者不尽人意之处,请指出,谢谢~


        从Flask0.11版本开始,这里有多种内置方法来运行一个开发服务器。最好的方法是使用flask命令行工具,但是你也可以继续使用Flask.run()函数。


1. 命令行

        在开发时,强烈推荐使用flask命令行脚本(上一章内容)。因为它提供了一个出众的重载体验。基本用法如下:

$ export FLASK_APP=my_application
$ export FLASK_ENV=development
$ flask run

        这里启用了开发环境,也包含了交互式调试器和重新加载器,并且随后在http://localhost:5000/上启动服务。

        服务单独的特定也能通过传递参数给run选项来控制。举个栗子,重新加载器被禁用:

$ flask run --no-reload

        注意:

        在Flask1.0之前,FLASK_ENV环境变量是不被支持的,并且你需要使用导出FLASK_DEBUG=1来启用调试模式。这种方式依然可以控制调试模式,但是你应该倾向于上面的方式来设置开发环境。


2. 在代码中

        另一种启动应用程序的方法,是使用Flask.run()函数。这种立即启动一个本地服务的方式,与flask脚本所做的完全一样。

        举个栗子:

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

        这对于一般情况来说很有效,但对于开发来说却不是很友好,这就是为什么从Flask0.11开始,推荐使用flask命令的方法。这样做的原因是,由于重载机制是何如工作的,有一些奇怪的副作用(比如执行某些代码两次,有时在没有消息的情况下崩溃,或者在出现语法或导入错误时挂掉了)。

        然而,它仍然是一种调用非自动重载应用程序的非常有效的方法。




你可能感兴趣的:(Flask)