Session
- 对于敏感、重要的信息,建议要存储在服务器端,不能存储在浏览器中,如用户名、余额、等级、验证码等信息
- 在服务器端进行状态保持的方案就是
Session
- Session依赖于Cookie
启用Session
Django项目默认启用Session
禁用Session:将Session中间件注释即可
Session存储方式
- Session数据,可以存储在数据库、缓存、Redis等
- 设置
SESSION_ENGINE
项指定Session存储方式
- 设置
存储在数据库中,如下设置可以写,也可以不写,这是默认存储方式
SESSION_ENGINE = 'django.contrib.sessions.backends.db'
存储在缓存中:存储在本机内存中,如果丢失则不能找回,比数据库的方式读写更快
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'
混合存储:优先从本机内存中存取,如果没有则从数据库中存取
SESSION_ENGINE = 'django.contrib.sessions.backends.cached_db'
如果存储在数据库中,需要在项
INSTALLED_APPS
中安装Session应用
默认存储Session的数据库
迁移后会在数据库中创建出存储Session的表
表结构
由表结构可知,操作Session包括三个数据:键,值,过期时间