Django Session通用配置
admin
2023-05-22 13:02:44
0

Django对于Session有一些默认的通用配置,这些默认配置为:

SESSION_COOKIE_NAME == "sessionid"      #Session的cookie保存在浏览器上时的key
SESSION_COOKIE_PATH == “/”              #Session的cookie保存的路径(默认)
SESSION_COOKIE_DOMAIN = None            #Session的cookie保存的域名(默认)
SESSION_COOKIE_SECURE = False           #是否Https传输cookie
SESSION_COOKIE_HTTPONLY = True          #是否Session的cookie只支持http传输(默认)
SESSION_COOKIE_AGE = 1209600            #Session的cookie失效日期(2周)(默认)
SESSION_SAVE_EVERY_REQUEST = False      #是否设置关闭浏览器使得Session过期
SESSION_COOKIE_AT_BROWSER_CLOSE = False #是否每次请求都保存Session,默认修改之后才能保存

这些配置可以在settings.py文件中写入并进行更改


Django中,Session可以保存在数据库中,可以保存到缓冲中,也可以保存到文件中,默认情况下是保存在数据库中,数据库中有一张Sessions表。可以通过修改settings.py文件来修改session的保存方式。

默认保存在数据库中:
SESSION_ENGINE = 'django.contrib.sessions.backends.db'

保存在文件中
SESSION_ENGINE = 'django.contrib.sessions.backends.file'


保存在缓存中
SESSION_ENGINE =  'django.contrib.sessions.backends.cache'


同时保存到缓存和数据库中
SESSION_ENGINE =  'django.contrib.sessions.backends.cache_db'



Django关于Session的操作:

request.session.set_expiry(value)
如果value是个整数, session会在这些秒后失效
如果value是个datatime或timedelta,session就会在这个时间后失效
如果value是0,用户关闭浏览器session就会失效
如果value是None,session会依赖全局session失效策略

request.session.delete("session_key")
删除当前用户的所有session数据

request.session.clear()
清除所有session

request.session['k1']
request.session.get('k1',None)

request.session['k1'] =123
不存则设置,存在则更新

request.session.setdefault('k1',123)
存在则不设置



参考:http://blog.csdn.net/clh704/article/details/9186465

相关内容

热门资讯

普京访华团规模会比特朗普的大吗... 在美国总统特朗普结束访华后,俄罗斯总统普京也将于5月19日至20日访华。俄方否认二者之间存在联系,同...
直击柳州地震震中太阳村镇:搜救... 5月18日0时21分,广西柳州市柳南区发生5.2级地震,震源深度8千米。凌晨时分,骤然地动山摇,打破...
开放式耳机到底能进化到哪一步?... 我发现,现在很多人买耳机,理由越来越朴素了。 不是为了什么 HiFi 音质,也不是为了图个清静,纯粹...
格陵兰岛自治政府总理见美特使,... 新华社奥斯陆5月18日电(记者张玉亮)哥本哈根消息:丹麦海外领地格陵兰岛自治政府总理延斯-弗雷德里克...
特朗普连发15张图分享“中国记... 据国是直通车,空军一号刚刚落地美国,特朗普就迫不及待地在社交媒体上分享了自己的“中国记忆”——连发1...
湖北宣恩强降雨致3人死亡、4人... 记者从湖北省恩施州宣恩县防汛抗旱指挥部了解到,5月17日至18日,湖北省恩施州宣恩县沙道沟镇白水河村...
这家意大利公司想让机械臂飞上太... 3D 打印是什么?你的直觉告诉你,是一台不足鞋盒大小的设备,吐出细如发丝的塑料,耗费数小时,堆叠成一...
2026荣耀性价比之王!实测半... 大家好,我是小杨,经过我线下门店实测、参数横向对比、用户口碑调研后,筛选出三款宝藏机型 —— 荣耀 ...
筑牢数字生命线,科士达以智慧能... 5月17日世界电信和信息社会日,2026 年国际电信联盟(ITU)以 “数字生命线:在互联世界中加强...
特朗普称将推迟对伊朗发动军事打... 当地时间5月18日,美国总统特朗普在社交平台“真实社交”发文表示,在卡塔尔、沙特阿拉伯、阿联酋领导人...