1.认识g对象
- g作为 flask 程序全局的一个临时变量,充当中间媒介的作用,我们可以通过它传递一些数据,例如一个数据库连接或者当前登入的用户。
- g保存的是当前请求的全局变量,仅在一个请求内,从一个函数到另一个函数共享数据,不同的请求会有不同的全局变量,通过不同的thread id区别
2.同session的区别:
- session有过期时间,在未过期之前,同一客户端发来的不同request都能够共享这个session
3.g对象的使用
属性的设置:
g.name = '张三'
属性的获取:
既可以使用正常对象属性获取的方式:
name = g.name
也可以使用 get() 方法来获取(推荐),同字典操作,可以通过第二个参数来设置默认值,如果不输入,则默认为None
name = g.get("name","李四")
示例:
from flask import Flask,request,g app = Flask(__name__) def test_g(): print(g.get('name',None)) @app.route('/test') def test(): g.name = '张三' test_g() return 'test' if __name__ == '__main__': app.run()
浏览器中输入'http://127.0.0.1:5000/test'
终端上会输出:张三