在django中,关于session的通用设置方法


Posted in Python onAugust 06, 2019

最近发现session的知识有点脱节了,默认设置愣是搞半天,看来忘了不少。今天把一些通用设置贴上来,以备随时回顾。

配置文件中设置默认操作(通用配置):

SESSION_COOKIE_NAME = "sessionid"            
    # Session的cookie保存在浏览器上时的key,即:sessionid=随机字符串(默认)

    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_EXPIRE_AT_BROWSER_CLOSE = False         
    # 是否关闭浏览器使得Session过期(默认)

    SESSION_SAVE_EVERY_REQUEST = False           
     # 是否每次请求都保存Session,默认修改之后才保存(默认)

既然通用配置都贴了,顺带贴上引擎配置部分吧:

Django中默认支持Session,其内部提供了5种类型的引擎供我们使用session:

- 数据库(默认)
- 缓存
- 文件
- 缓存+数据库
- 加密的cookie

缓存类型设置:(在setting.py中)

SESSION_ENGINE = 'django.contrib.sessions.backends.cache' # 引擎
SESSION_CACHE_ALIAS = 'default' 
# 使用的缓存别名(默认内存缓存,也可以是memcache),此处别名依赖缓存的设置

文件类型设置:

SESSION_ENGINE = 'django.contrib.sessions.backends.file'  # 引擎
SESSION_FILE_PATH = None                  
# 缓存文件路径,如果为None,则使用tempfile模块获取一个临时地址tempfile.gettempdir()

缓存+数据库:

SESSION_ENGINE = 'django.contrib.sessions.backends.cached_db'
#一般用于构建高并发应用的时候才选用,但是其使用效率未必比数据库类型高

加密cookie:

SESSION_ENGINE = 'django.contrib.sessions.backends.signed_cookies'

以上设置全部在setting中设置,当然了,默认使用的数据库在没有指明下,必然是django的sqlite3,除非自己指定一个数据库。

这篇在django中,关于session的通用设置方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python选择排序算法的实现代码
Nov 21 Python
python传递参数方式小结
Apr 17 Python
详解Python中的type()方法的使用
May 21 Python
Python判断变量是否为Json格式的字符串示例
May 03 Python
python anaconda 安装 环境变量 升级 以及特殊库安装的方法
Jun 21 Python
Python多线程原理与用法实例剖析
Jan 22 Python
使用Python的OpenCV模块识别滑动验证码的缺口(推荐)
May 10 Python
python数据爬下来保存的位置
Feb 17 Python
python GUI库图形界面开发之PyQt5信号与槽基本操作
Feb 25 Python
详解Python设计模式之策略模式
Jun 15 Python
使用matplotlib的pyplot模块绘图的实现示例
Jul 12 Python
Pytorch中使用ImageFolder读取数据集时忽略特定文件
Mar 23 Python
Django 对象关系映射(ORM)源码详解
Aug 06 #Python
Django中使用session保持用户登陆连接的例子
Aug 06 #Python
Python中的self用法详解
Aug 06 #Python
django框架用户权限中的session缓存到redis中的方法
Aug 06 #Python
Django 响应数据response的返回源码详解
Aug 06 #Python
详解Python Matplotlib解决绘图X轴值不按数组排序问题
Aug 05 #Python
Django中提供的6种缓存方式详解
Aug 05 #Python
You might like
PHP 开发环境配置(Zend Server安装)
2010/04/28 PHP
PHP内核探索:变量概述
2014/01/30 PHP
ThinkPHP框架结合Ajax实现用户名校验功能示例
2019/07/03 PHP
在 Laravel 项目中使用 webpack-encore的方法
2019/07/21 PHP
javascript中onclick(this)用法介绍
2013/04/19 Javascript
js中一个函数获取另一个函数返回值问题探讨
2013/11/21 Javascript
js 显示base64编码的二进制流网页图片
2014/04/04 Javascript
Jquery和angularjs获取check框选中的值的方法汇总
2016/01/17 Javascript
JS+Canvas绘制时钟效果
2020/08/20 Javascript
JS跨域交互(jQuery+php)之jsonp使用心得
2016/07/01 Javascript
bootstrap fileinput完整实例分享
2016/11/08 Javascript
jQueryUI 拖放排序遇到滚动条时有可能无法执行排序的小bug及解决方案
2016/12/19 Javascript
微信小程序开发(二)图片上传+服务端接收详解
2017/01/11 Javascript
Angular实现的简单定时器功能示例
2017/12/28 Javascript
JavaScript字符串转数字的5种方法及遇到的坑
2018/07/16 Javascript
Vue.js实现双向数据绑定方法(表单自动赋值、表单自动取值)
2018/08/27 Javascript
ExtJs使用自定义插件动态保存表头配置(隐藏或显示)
2018/09/25 Javascript
vue工程全局设置ajax的等待动效的方法
2019/02/22 Javascript
微信小程序的引导页实现代码
2020/06/24 Javascript
解决Echarts2竖直datazoom滑动后显示数据不全的问题
2020/07/20 Javascript
浅谈Python类的__getitem__和__setitem__特殊方法
2016/12/25 Python
关于python pyqt5安装失败问题的解决方法
2017/08/08 Python
Python 处理数据的实例详解
2017/08/10 Python
如何通过Python实现标签云算法
2019/07/02 Python
用python建立两个Y轴的XY曲线图方法
2019/07/08 Python
python networkx 包绘制复杂网络关系图的实现
2019/07/10 Python
10分钟理解CSS3 FlexBox弹性布局
2018/12/20 HTML / CSS
迪士尼英国官方商店:shopDisney UK
2019/09/21 全球购物
荷兰家电销售网站:Welhof
2020/12/08 全球购物
大学生职业生涯规划范文
2014/01/08 职场文书
大学生两会精神学习心得体会
2014/03/10 职场文书
《泉水》教学反思
2014/04/11 职场文书
学习退步检讨书
2014/09/28 职场文书
小班下学期幼儿评语
2014/12/30 职场文书
MySQL悲观锁与乐观锁的实现方案
2021/11/02 MySQL
《黑岩★★射手 DAWN FALL》BD发售宣传CM公开
2022/04/04 日漫