django使用session来保存用户登录状态
先建好登录用的model,其次理解使用cookie和session的原理,一个在本机保存,一个在服务器保存
- 使用session好处,可以设置登录过期的时间,
编写views中login的函数
def login(request):
username_get = request.POST['name']
password_get = request.POST['password']
b=[]
a = 0
b = UserInfo.objects.filter(username=username_get)
a = len(b)
if a==0:
return HttpResponse("0")
else:
if request.method == 'POST':
#return HttpResponse(result)
if b[0].password==password_get:
display ='none'
displaytwo='block'
username = username_get
logined = False
template = get_template('one/default.html')
request_context = RequestContext(request)
request_context.push(locals())
html = template.render(request_context)
response = HttpResponse(html)
try:
if username_get:
request.session['name'] = username_get #使用session来保存用户登录信息
#response.set_cookie('name',username_get) #使用response(用户自己电脑)保存的cookie来验证用户登录
if password_get:
request.session['password'] = password_get
#response.set_cookie('password',password_get)
except:
pass
return response
else:
return HttpResponse("0")
- login主要的用户第一次登录时,需要调用的,包括去POST中的值并验证,同时保存在cookie或session中
if 'name' in request.session and 'password' in request.session:#判断是否有登录过,并是否有效
username = request.session['name']
d['display'] = 'none'
d['displaytwo'] = 'block'
logined = False#有效就把登录和注册的按钮不显示
c['d'] = d #c是个字典,
template = get_template('one/default.html')
request_context = RequestContext(request)
request_context.push(locals())
html = template.render(request_context)
return HttpResponse(html)
- 使用session保存,即使用户在浏览器清除了cookie,重新刷新,登录信息仍然有效

django使用session来保存用户登录状态的更多相关文章
- php使用session来保存用户登录信息
php使用session来保存用户登录信息 使用session保存页面登录信息 1.数据库连接配置页面:connectvars.php <?php //数据库的位置 define('DB_HOS ...
- Django 用Session和Cookie分别实现记住用户登录状态
简介 由于http协议的请求是无状态的.故为了让用户在浏览器中再次访问该服务端时,他的登录状态能够保留(也可翻译为该用户访问这个服务端其他网页时不需再重复进行用户认证).我们可以采用Cookie或Se ...
- 关于用户登录状态存session,cookie还是数据库或者memcache的优劣
session中保存登陆状态: 优:整个应用可以从session中获取用户信息,并且查询时很方便.在session中保存用户信息是不可缺少的(web应用中) 缺:session中不宜保存大量信息,会增 ...
- Asp.Net使用加密cookie代替session验证用户登录状态 源码分享
首先 session 和 cache 拥有各自的优势而存在. 他们的优劣就不在这里讨论了. 本实例仅存储用户id于用户名,对于多级权限的架构,可以自行修改增加权限字段 本实例采用vs2010编写 ...
- iOS开发之记录用户登录状态
iOS开发之记录用户登录状态 我们知道:CoreData的配置和使用步骤还是挺复杂的.但熟悉CoreData的使用流程后,CoreData还是蛮好用的.今天要说的是如何记录我们用户的登陆状态.例如微信 ...
- session、cookie 记住登录状态的实现
Cookie的机制 Cookie是浏览器(User Agent)访问一些网站后,这些网站存放在客户端的一组数据,用于使网站等跟踪用户,实现用户自定义功能. Cookie的Domain和Path属性标识 ...
- 基于cookie的用户登录状态管理
cookie是什么 先来花5分钟看完这篇文章:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Cookies 看完上文,相信大家对cookie已经有 ...
- C# MVC 用户登录状态判断 【C#】list 去重(转载) js 日期格式转换(转载) C#日期转换(转载) Nullable<System.DateTime>日期格式转换 (转载) Asp.Net MVC中Action跳转(转载)
C# MVC 用户登录状态判断 来源:https://www.cnblogs.com/cherryzhou/p/4978342.html 在Filters文件夹下添加一个类Authenticati ...
- winform实现Session功能(保存用户信息)
问题描述:在winform中想实现像BS中类似Session的功能,放上需要的信息,在程序中都可以访问到. 解决方案:由于自己很长时间没有做过winform的程序,一时间竟然手足无措起来.后来发现wi ...
随机推荐
- loj2314 「NOIP2017」小凯的疑惑[同余最短路or数论]
这题以前就被灌输了“打表找规律”的思想,所以一直没有好好想这道题,过了一年还不太会qwq.虽然好像确实很简单,但是还是带着感觉会被嘲讽的心态写这个题解...而且还有一个log做法不会... 法1:(一 ...
- c++关于字符串的读入和截取
#include<iostream>#include<string>#include<vector>using namespace std;vector<st ...
- EF 批量添加数据
原文:https://www.cnblogs.com/liuruitao/p/10049191.html 原文:https://www.cnblogs.com/yaopengfei/p/7751545 ...
- 浏览器表单自动填充默认样式 - autofill问题解决
这不知道是个什么神仙网站,解决办法写的这么清楚,页面有这么让人舒服 https://lhajh.github.io/css/chrome/2018/04/17/The-chrome-browser-f ...
- react-helloword
1.在webpack项目中使用react 创建webpack项目步骤见: 创建基本的webpack4.x项目 webpack-dev-server 和 html-webpack-plugin的 ...
- php+提高大文件上传速度
PHP用超级全局变量数组$_FILES来记录文件上传相关信息的. 1.file_uploads=on/off 是否允许通过http方式上传文件 2.max_execution_time=30 允许脚本 ...
- delphi请求http接口并上传附件
实现附件的上传:需要使用TIdMultiPartFormDataStream控件, uses IdMultipartFormData; 例子: procedure TClientForm.Button ...
- bootstrap面板的使用
<div class="panel panel-primary"> <div class="panel-heading"> 头部 < ...
- Nginx-rtmp直播之业务流程分析
1. 综述 1.1 直播原理 使用 obs 向 nginx 推送一个直播流,该直播流经 nginx-rtmp 的 ngx_rtmp_live_module 模块转发给 application live ...
- linux中 ls |wc -l
linux中 ls |wc -l_百度知道 答 205行,205个字,1920个字节,wc -l只输出文件行数