1. 初始化
Flask程序必须创建一个程序实例。
Web服务器把接收到的所有客户端请求,转交给Web服务器网关接口对象处理。
一般套路是这样的:
from flask import Flask
app = Flask(__name__)
这里创建Flask app实例(Flask的构造函数),需要提供的参数只有一个,就是程序主模块或包的名字,一般就是Python的name变量。
2. 路由和视图函数
客户端的请求经由Web服务器转发给Flask程序实例。程序实例需要URL到具体代码的映射关系。这个映射关系称为路由。
Flask中最简单的路由定义方式是app.route修饰器。
@app.route('/')
def index():
# 这里是demo,实际这么返回响应字符串是不规范的
return '<h1>Hello World!</h1>'
这里所谓的修饰器,是Python语言的特性,可以规定函数的不同行为,比如类中的静态方法就需要增加修饰器 @staticmethod。
上面的路由定义,把根路径和index函数关联起来,如果部署程序的服务器域名是 www.example.com,那么浏览器中输入 http://www.example.com,就会触发这个函数。
函数的返回值称为响应,是客户端接收到的内容。这样如果客户端是Web浏览器,响应就是给客户看的文档。
index()这样的函数,叫做视图函数(view function),返回的响应可以包含HTML的简单字符串,也可以是复杂的表单。
视图函数的参数
URL是可以含有可变部分的,比如