1、请求-响应
前提:视图函数主要用于处理请求,传入其他请求对象,将一团糟,上下文可以把某些对象变为全局访问。flask使用上下文让特定的变量在一个线程中全局可访问,不干扰其他线程。
四个上下文全局变量
- current_app: 激活程序实例
- g:处理请求临时存储的对象
- request:请求对象,封装客户端发的http请求的内容
- seeion:用户回话,存储请求间需要记住的值的词典
四个请求钩子
主要用于处理请求前或者请求后的代码很有用,例如创建数据库,身份认证等
- before_first_request:注册一个函数在处理第一个请求之前运行
- before_request:注册一个函数,在每次请求之前运行
- after_request:注册一个函数,如果没有没处理的异常抛出,每次请求之后运行
- teardowm_request:注册一个函数,即使有没处理的异常抛出,也每次请求之后运行
注:请求钩子函数和视图函数之间共享数据一般用上下文全局变量g
例如:brefore_requset处理程序可将数据库加载已登录用户保存到g.user,视图函数获取用户
响应
重定向用return 返回 函数 redirect()
@app.route("/")
def index():
return redirct("www.baidu.com")
管理工具(flask_script)
特点:用命令执行程序
终端输入 python manage.py runserver -d