Django Session管理
Session是存储在服务器端的用户凭证,安全性比Cookie要高,Django是将Session信息存放在Cookie里面。用户一旦禁用Cookie,就不能用了。
Session不光可以存储在Cookie里面,如果前端将其存储在页面中,作为全局变量,每次发送,都携带上,和放在Cookie里面的效果是一样的,只是放在Cookie里面简单点。
前后端分离的项目,一般都是将Session凭证放在Header里面,起名叫做Token。
Session的存储形式
# 数据库保存,默认 SESSION_ENGINE = ‘django.contrib.sessions.backends.db‘ # 文件形式保存 SESSION_ENGINE = ‘django.contrib.sessions.backends.file‘ # 文件保存的路径 SESSION_FILE_PATH = ‘/cache/session‘ # 缓存形式保存 SESSION_ENGINE = ‘django.contrib.sessions.backends.cache‘ # 缓存名称 SESSION_CACHE_ALIAS = ‘default‘ # 数据库+缓存 SESSION_ENGINE = ‘django.contrib.sessions.backends.cache_db‘ # cookie SESSION_ENGINE = ‘django.contrib.sessions.backends.signed_cookies‘
session的操作
# 如果不存在,则报错 request.session[‘token‘] # 如果不存在,返回None request.session.get(‘token‘) # 设置默认值 request.session.setdefault(‘token‘, ‘‘) # 更新值 request.session[‘token‘] = ‘‘ # 删除值 del request.session[‘token‘] # 清空session request.session.clear() # session中的键 request.session.keys() # session中的值 request.session.values() # session的session_key,django_session中的session_key request.session.session_key
相关推荐
houmenghu 2020-11-17
jincheng 2020-09-01
阳光之吻 2020-08-03
hzyuhz 2020-07-04
服务器端攻城师 2020-06-26
xuanwenchao 2020-06-14
Lophole 2020-06-13
明瞳 2020-06-08
SoarFly00 2020-06-03
咻咻ing 2020-06-01
三动 2020-05-29
我心似明月 2020-11-09
oraclemch 2020-11-06
ltd00 2020-09-12
康慧欣 2020-09-10
waveclouds 2020-09-04
蓝色深海 2020-09-15
思君夜未眠 2020-08-25
取个好名字真难 2020-08-06