Flask学习一 基本概念

所有Flask程序必须创建一个程序实例,app = Flask(__name__),

Web服务器使用WSGI(Web Server Gateway Interface)协议把接受自客户端的所有请求都转交给这个对象(app)处理。

 一个基本的程序:

 1 from flask import Flask
 2 
 3 app = Flask(__name__)
 4 
 5 @app.route('/user/<name>')#使用app.route装饰器,把函数注册为路由(URL到函数的映射关系)
 6 def index(name):#视图函数,处理URL请求
 7   return 'hello name'#返回的响应response
 8 
 9 if __name__ == '__main__':
10     app.run(debug=True)#使用run方法启动Flask集成的开发Web服务器

  一些基本概念:

1、程序和请求上下文

  Flask使用上下文临时把某些对象变为全局可访问,与此同时却不会干扰其他线程。

current_app 程序上下文 当前激活程序的实例
g 程序上下文 处理请求时用作临时存储的对象
request 请求上下文 请求对象,封装客户端的HTTP请求
sessioin 请求上下文 用户会话,用于存储请求之间需要记住的值的字典

2、请求钩子 

  钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程序以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。

  请求钩子使用装饰器实现。 

before_first_request 注册一个函数 在处理第一个请求之前运行
bdefor_request 注册一个函数 在每次请求之前运行
after_request 注册一个函数 如果没有未处理的异常抛出,在每次请求之后运行
teardown_request 注册一个函数 即使有未处理的异常,也在每次请求之后运行

 

 



 

 

 

 

 

posted @ 2020-03-28 16:28  cheng4632  阅读(127)  评论(0编辑  收藏  举报