8、Django实战第8天:session和cookie自动登录机制
因为http是无状态协议,因此,并不会记录用户的登录状态。在早期,是直接把用户名和密码等信息存储在浏览器的cookie来实现记录用户密码登录。
但是这样存在安全隐患,只要别人登录你的电脑cookie信息,就取得了用户名和密码等重要信息。
为了解决这个问题,我们使用了session技术
在Django中,当我们输入用户名、密码登录后。它调用login,这个login根据用户信息生成了一个session,生成的session信息会保存到数据表当中(django_session表),这个表会根据用户的信息进行加密生成session_data


session_key: 就是服务器给用户返回的id, 在浏览器当中,这个值是保存为sessionid
session_data: 这是一个加密后的信息,用来保存用户名和密码等信息
expire_data: 过期时间,Django可以设置过期时间
那么Django是如何获取到客户端传给我们的session信息呢?在settings.py中,有下面一行配置,它会拦截到session信息,然后根据sessionid去数据库中查找,如果找到,则对session_data进行解密。如果我们把这行注释掉,自动登录就会失效

8、Django实战第8天:session和cookie自动登录机制的更多相关文章
- session和cookie自动登录机制
cookie的存储 cookie是浏览器支持的一种本地存储方式.以dict,键值对方式存储. {"sessionkey": "123"} 浏览器会自动对于它进行 ...
- 第十一篇 session和cookie自动登录机制
session和cookie的作用和区别可以在网上查到,这里简单说下,我们使用的http协议本身是种无状态的协议,就是说web服务器接收到浏览器的请求,会直接返回相应内容,并不会检查是哪个浏览器,即浏 ...
- 基于session和cookie的登录验证(CBV模式)
基于session和cookie的登录验证(CBV模式) urls.py """cookie_session URL Configuration The `urlpatt ...
- Session和Cookie,Django的自动登录机制
什么是Cookie? Cookie是浏览器的本地存储机制,存储服务器返回的各种信息,下次发起请求时再发送给服务端,比如访问baidu 什么是Session? 刚才说道,Cookie存储服务端返回的信息 ...
- session、cookie 记住登录状态的实现
Cookie的机制 Cookie是浏览器(User Agent)访问一些网站后,这些网站存放在客户端的一组数据,用于使网站等跟踪用户,实现用户自定义功能. Cookie的Domain和Path属性标识 ...
- [Django实战] 第4篇 - 用户认证(用户登录)
今天来实现用户登录模块 首先,我们创建一个表单(forms.py): from django import forms from django.contrib.auth.models import U ...
- 7、Django实战第7天:用form实现登录
Django提供了form对表单进行验证,比如今天要完成的限定登录的时候用户名和密码不能为空,通过这个操作,数据进入到数据库查询之前,我们就可以过滤很多错误,避免不必要的查询. 在users目录下新建 ...
- 【2017-05-21】WebForm内置对象:Session、Cookie,登录和状态保持
1.Request -获取请求对象 string s =Request["key"]; 2.Response - 响应请求对象 Response.Redirect(" ...
- WebForm内置对象:Session、Cookie,登录和状态保持
1.Request -获取请求对象 string s =Request["key"]; 2.Response - 响应请求对象 Response.Redirect(" ...
随机推荐
- nm用法小记
nm用于显示目标文件的符号,也是二进制工具集(info binutils)里的一员 先来看一个例子,源码和对应的命令结果 四部分分别表示的意义 符号所在的obj文件名 符号的值,这里应该是指符号所在段 ...
- 洛谷P1346 电车
P1346 电车 236通过 757提交 题目提供者yeszy 标签图论福建省历届夏令营 难度普及/提高- 提交该题 讨论 题解 记录 最新讨论 解不好啊,快疯了!!哪位大… 求解:为何除了-1的点之 ...
- Codeforces Round #524 (Div. 2) C. Masha and two friends
C. Masha and two friends 题目链接:https://codeforc.es/contest/1080/problem/C 题意: 给出一个黑白相间的n*m的矩阵,现在先对一个子 ...
- bzoj 4624 农场种植 fft
4624: 农场种植 Time Limit: 50 Sec Memory Limit: 512 MBSubmit: 48 Solved: 31[Submit][Status][Discuss] D ...
- cloudera manager配置
cloudera manager的数据库配置文件位置: /etc/cloudera-scm-server/db.properties
- Drac6-Web界面无法访问
1. ssh idracip, and reset RAC -- will need around 10mins /admin1-> racadm racreset RAC reset oper ...
- Vue项目中引入外部文件(css、js、less)
例子中css文件采用bootstrap.css,js文件采用jQuery,less文件用less.less(自定义文件) 步骤一:安装webpack cnpm install webpack -g 步 ...
- Quartus ModelSim联合仿真中的RAM初始化
Modelsim只支持Hex格式的初始化文件,文件需要放在仿真的根目录下,例如:.\simulation\modelsim:并且在利用Quartus宏生成IP时,选择的初始化文件必须用绝对路径!否则M ...
- 【洛谷 P3629】 [APIO2010]巡逻 (树的直径)
题目链接 容易发现,当加一条边时,树上会形成一个环,这个环上的每个点都是只要走一次的,也就是说我们的答案减少了这个环上点的个数,要使答案最小,即要使环上的点最多,求出直径\(L\),则答案为\(2(n ...
- win8优化
微软发布win8系统之后受到很多电脑爱好者的关注,都想去尝试体验win8操作系统,对电脑系统优化和系统性能提高一直是我们所追求的.而很多用户都会选择第三方软件对系统进行相关优化,其实我们可以手动对电脑 ...