python之路-----django 自定义cookie签名
1.默认自定义cookie
在使用扩展签名时,会根据settings 配置中的 SIGNING_BACKEND 来运行加密方法,默认使用 django.core.signing.TimestampSigner 类进行加密和解密
查看: set_signed_cookie 函数,我们打印 get_cookie_signer 的返回值,可以得知是:django.core.signing.TimestampSigner 对象。
查看 get_cookie_signer 函数,可以看出根据: settings.SIGNING_BACKEND 来配置加解密的类方法。默认使用:django.core.signing.TimestampSigner。
查看django.core.signing.TimestampSigner 类 ,有sign和unsign方法来实现加解密,所以我们自定义类时,也必须有这两个方法来进行加解密,并且方法名称不能变更(否则需要修改django其他源码)
2.自定义扩展cookie
2.1 建立 一个 模块文件:c1,新建 类 my_cookie.继承: TimestampSigner 类
2.2 定义类方法 sign 和 unsign
2.3 settings文件中配置: SIGNING_BACKEND=‘c1.my_cookie’
python之路-----django 自定义cookie签名的更多相关文章
- 自学Python之路-django
自学Python之路-django 自学Python之路[第一回]:1.11.2 1.3
- Python之路-(Django(Cookie、分页))
Cookie 分页 1.获取Cookie: request.COOKIES['key'] request.get_signed_cookie(key, default=RAISE_ERROR, sal ...
- Python之路-(Django(csrf,中间件,缓存,信号,Model操作,Form操作))
csrf 中间件 缓存 信号 Model操作 Form操作 csrf: 用 django 有多久,我跟 csrf 这个概念打交道就有久了. 每次初始化一个项目时都能看到 django.middlewa ...
- python之路 django基础
Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. ...
- Python之路-(Django进阶二)
model: 双下划线: # 获取个数 # # models.Tb1.objects.filter(name='seven').count() # 大于,小于 # # models.Tb1.objec ...
- Python之路-(Django进阶一)
Django请求生命周期: 首先,客户端发送请求到服务器的urls库,通过匹配url后面的关键字,去找指定app里面的的view. 然后,app通过判断,拿到数据库数据和html模板文件. 最后,将拿 ...
- python框架之Django(7)-Cookie&Session使用
Cookie 添加 response.set_cookie 添加明文cookie response.set_cookie(key, value='', max_age=None, expires=No ...
- Python之路【第十七篇】:Django【进阶篇 】
Python之路[第十七篇]:Django[进阶篇 ] Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接 ...
- Python之路【第十七篇】:Django之【进阶篇】
Python之路[第十七篇]:Django[进阶篇 ] Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接 ...
随机推荐
- ssh到虚拟机---一台主机上
问题描述:我们需要ssh来编辑虚拟机中的文件,以此提高工作效率.但是新建的虚机一般来说没有开启ssh服务,所以需要在虚拟机上开启ssh服务. 1)检查是否安装了SSH rpm -qa |grep ss ...
- 不能最为IF判断条件的属性
<!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content=&q ...
- Android文件各种存储路径的比较
1.File cacheDir = context.getCacheDir(); 应用内部存储空间(数据文件私有)文件存储到这个路径下,不需要申请权限,当应用被卸载的时候,目录下的文件会被删除. 需要 ...
- openwrt如何关掉防火墙?
答: 1. 阻止防火墙服务开机自动启动 /etc/init.d/firewall disable 2. 关闭防火墙 /etc/init.d/firewall stop
- BZOJ 4259 残缺的字符串
思路 同样是FFT进行字符串匹配 只不过两个都有通配符 匹配函数再乘一个\(A_i\)即可 代码 #include <cstdio> #include <algorithm> ...
- 论文笔记:DARTS: Differentiable Architecture Search
DARTS: Differentiable Architecture Search 2019-03-19 10:04:26accepted by ICLR 2019 Paper:https://arx ...
- ZJOI 2017 树状数组(线段树套线段树)
题意 http://uoj.ac/problem/291 思路 不难发现,九条カレン醬所写的树状数组,在查询区间 \([1,r]\) 的时候,其实在查询后缀 \([r,n]\) :在查询 \([l,r ...
- Lintcode470-Tweaked Identical Binary Tree-Easy
470. Tweaked Identical Binary Tree Check two given binary trees are identical or not. Assuming any n ...
- Maven pom详解
POM全称是Project Object Model,即项目对象模型.pom.xml是maven的项目描述文件,以xml的 形式描述项目的信息,包括项目名称.版本.项目id.项目的依赖关系.编译环境. ...
- web.xml 设置字符编码
个人理解 就是为了防止在前端输入的数据到了后台发生乱码 直接复制到web.xml里面就可以使用 亲测 能用!!! <!-- 前端过滤器设置字符编码 --> <filter> ...