一、初始化

每个Flask程序都必须创建一个实例,即Flask类的对象,一般采用如下形式:

1 from flask import Flask
2 
3 app = Flask(__name__)
Flask实例创建

其中, __name__用于指定程序主模块或包的名字,Flask利用name的值决定程序所在根目录,以方便相对于根目录来查找资源文件。

 

二、路由

1、静态路由

当客户端发出请求给web服务器后,web服务器会将该请求转发给Flask实例进行处理,因此Flask实例必须知道每个接收到的请求该对应运行那个接口,这就

通过保存URL地址到接口的映射关系来实现路由。 Flask通过app.route装饰器将函数注册为路由,如:

1 @app.route('/')
2 def hello_world():
3     return 'Hello World!'
路由

代码中,将hello_world()函数注册为程序根地址的处理接口,假设当前程序的域名为"www.example.com",则在浏览器中输入"http://www.example.com/"后,将

输出"Hello World!",此即Flask程序给出的响应。

2、动态路由

上面的路由称为静态路由,即路由地址是固定的,但有些应用场景下,我们可能会发现路由地址中有些部分是可变的,比如获取用户信息的URL地址"http://www.example.com/pattywgm"中pattywgm就是可变的部分,对不同的用户对应不同的用户编号。Flask为我们提供了参数式的可变路由方式,如:

1 @app.route("/user/<user_name>")
2 def hello_user(user_name):
3     return "Hello %s" % user_name
动态路由

 

三、启动服务器

Flask程序以run()方法启动web服务器,如:

1 if __name__ == '__main__':
2     app.run()
启动服务器

服务器启动后,会进入轮询,一直运行到程序停止为止。开发中,我们可以设置app.run(debug=True)来开启debug模式,方便调试。

 

四、运行示例

Flask默认启用5000端口

posted on 2017-03-22 21:00  pattywgm  阅读(526)  评论(0编辑  收藏  举报