一、状态保持seesion。
sesison:与框架、语言无关,cookie和session的概念,本质是基于键值对的字符串信息,该seesion基于cookie实现。
二、Flask特有的session。
session:请求上下文对象,封装了用户信息,可以对redis数据库种缓存的用户信息进行读写操作。
比如:
session.pop["user_id"] = user.id
session["user_id"] = user.id
三、数据库会话对象session。
flask_SQLAlchemy扩展包:封装了对数据库的操作,离开了这个扩展包,就不会碰见session。
常用操作:
db.session.add()
db.session.add_all([])
db.session.commit()
db.session.delete()
db.session.rollback()
四、扩展包Session(它是一个类)。
flask_session:封装了状态保持中的用户信息的缓存位置,并对session信息进行签名,并且加上前缀,可以指定其它缓存位置(memched/mongoDB/filesystem/sqlalchemy)
注意:一、二和四的session在本质上都是为了实现状态保持。