流行Web框架:Flask

Flask是一个用于Web开发的微框架。Flask的微小,在于其可以使用一个文件完成服务的建立。微小的目的是在保证其内核足够简单的情况下能够获得最大的扩展能力。Flask不会为你决定需要使用哪些技术或者哪些框架,一切都可以随你所选;它也不会附带任何数据库抽象层、表单验证器以及其他任何额外的功能,Flask只是支持你将自己熟悉的功能加入到应用里来。

与前面所介绍的aiohttp不同,aiohttp并不是一个完整的Web框架,而更加像是一个HTTP服务的核心。相比之下,Flask拥有更加强大的兼容性以及调试能力。

相比本文提到但未介绍的Django和Tornado,Flask更加轻型。Django是一个集大成者,其中包含面面俱到的功能,这就使得Django变得较为庞大而缓慢;而Tornado更加偏重于异步通讯能力,Web框架方面较弱。所以在进行快速开发的时候,Flask就成了一个更加适合的选择。

以下示例启动了一个最小的Flask应用,读者可以试一下Flask的简单。

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
	return "Hello world"

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