四种不同的session的对比分析

一、状态保持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在本质上都是为了实现状态保持。

猜你喜欢

转载自blog.csdn.net/jingzhunbiancheng/article/details/80922884