Django中的cookie与session操作实例代码

添加cookie:

def login(req):
  if req.method=="POST":
    uf = UserInfoForm(req.POST)
    if uf.is_valid():
      username = uf.cleaned_data["username"]
      password = uf.cleaned_data["password"]
      print username,password
      users = UserInfo.objects.filter(username=username,password=password)
      if users:
        response = HttpResponseRedirect("/index/")
        response.set_cookie("username",username,3600)
        return response
      else:
        return HttpResponseRedirect("/login")
      # return HttpResponseRedirect()
  else:
    uf = UserInfoForm()
  return render_to_response("login.html",{"uf":uf})

获得cookie:

def index(req):
  username = req.COOKIES.get("username","")return render_to_response("index.html",{"username":username})

删除cookie:

  Response.delete_cookie("username")

添加session:

def sesion(req):
  if req.method == "POST":
    uf = UserInfoForm(req.POST)
    if uf.is_valid():
      username = uf.cleaned_data["username"]
      req.session["username"] = username
      return HttpResponseRedirect("/index/")
  else:
    uf = UserInfoForm()
  return render_to_response("LoadFile.html",{"uf":uf})

获取session:

def index(req):
  username = req.session.get("username","")
  return render_to_response("index.html",{"username":username})

删除session:

del req.session['username']

总结

以上所述是小编给大家介绍的Django中的cookie与session操作实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • 深入探究Django中的Session与Cookie

    前言 Cookie和Session相信对大家来说并不陌生,简单来说,Cookie和Session都是为了记录用户相关信息的方式,最大的区别就是Cookie在客户端记录而Session在服务端记录内容. 那么Cookie和Session之间的联系是怎么建立的呢?换言之,当服务器接收到一个请求时候,根据什么来判断读取哪个Session的呢? 对于Django默认情况来说,当用户登录后就可以发现Cookie里有一个sessionid的字段,根据这个key就可以取得在服务器端记录的详细内容.如果将这个字

  • 在Python的Django框架的视图中使用Session的方法

    SessionMiddleware 激活后,每个传给视图(view)函数的第一个参数``HttpRequest`` 对象都有一个 session 属性,这是一个字典型的对象. 你可以象用普通字典一样来用它. 例如,在视图(view)中你可以这样用: # Set a session value: request.session["fav_color"] = "blue" # Get a session value -- this could be called in

  • 在Django的session中使用User对象的方法

    通过session,我们可以在多次浏览器请求中保持数据, 接下来的部分就是用session来处理用户登录了. 当然,不能仅凭用户的一面之词,我们就相信,所以我们需要认证. 当然了,Django 也提供了工具来处理这样的常见任务(就像其他常见任务一样). Django 用户认证系统处理用户帐号,组,权限以及基于cookie的用户会话. 这个系统一般被称为 auth/auth (认证与授权)系统. 这个系统的名称同时也表明了用户常见的两步处理. 我们需要 验证 (认证) 用户是否是他所宣称的用户(一

  • 在Django的视图(View)外使用Session的方法

    从内部来看,每个session都只是一个普通的Django model(在 django.contrib.sessions.models 中定义).每个session都由一个随机的32字节哈希串来标识,并存储于cookie中. 因为它是一个标准的模型,所以你可以使用Django数据库API来存取session. >>> from django.contrib.sessions.models import Session >>> s = Session.objects.g

  • Django的session中对于用户验证的支持

    用户与Authentication 通过session,我们可以在多次浏览器请求中保持数据, 接下来的部分就是用session来处理用户登录了. 当然,不能仅凭用户的一面之词,我们就相信,所以我们需要认证. 当然了,Django 也提供了工具来处理这样的常见任务(就像其他常见任务一样). Django 用户认证系统处理用户帐号,组,权限以及基于cookie的用户会话. 这个系统一般被称为 auth/auth (认证与授权)系统. 这个系统的名称同时也表明了用户常见的两步处理. 我们需要 验证 (

  • Django 中 cookie的使用

    Cookie是浏览器在客户端留下的一段记录,这段记录可以保留在内存或者硬盘上.因为Http请求是无状态的,通过读取cookie的记录,服务器或者客户端可以维持会话中的状态.比如一个常见的应用场景就是登录状态.Django里面,对cookie的读取和设置很简单.Cookie本身的格式类似字典,因此可以通过request的key或者get获取:然后他的设置则是通过response对象的set_cookie设定; 如果要取消cookie,把过期时间设置为当前时间就行了. 获取Cookie: reque

  • 详解Python的Django框架中的Cookie相关处理

    浏览器的开发者在很早的时候就已经意识到, HTTP's 的无状态会对Web开发者带来很大的问题,于是(cookies)应运而生. cookies 是浏览器为 Web 服务器存储的一小段信息. 每次浏览器从某个服务器请求页面时,它向服务器回送之前收到的cookies 来看看它是怎么工作的. 当你打开浏览器并访问 google.com ,你的浏览器会给Google发送一个HTTP请求,起始部分就象这样: GET / HTTP/1.1 Host: google.com ... 当 Google响应时,

  • Django中的cookie与session操作实例代码

    添加cookie: def login(req): if req.method=="POST": uf = UserInfoForm(req.POST) if uf.is_valid(): username = uf.cleaned_data["username"] password = uf.cleaned_data["password"] print username,password users = UserInfo.objects.fil

  • Django中的cookie和session

    http协议是无状态的.下一次去访问一个页面时并不知道上一次对这个页面做了什么. 无状态的应用层面的原因是:浏览器和服务器之间的通信都遵守HTTP协议. 根本原因是:浏览器与服务器是使用Socket套接字进行通信的,服务器将请求结果返回给浏览器之后,会关闭当前的Socket连接,而且服务器也会在处理页面完毕之后销毁页面对象. 有时需要保存下来用户浏览的状态,比如用户是否登录过,浏览过哪些商品等. 实现状态保持主要有两种方式: 在客户端存储信息使用Cookie.在服务器端存储信息使用Session

  • sql语句中日期相减的操作实例代码

    目录 1. 直接用日期时间做减法 2. 使用 datediff 函数 补充:下面来看个实例 总结 1. 直接用日期时间做减法 GETDATE() 和 NOW() 查出来的时间一样,都带时分秒 select GETDATE(),NOW() FROM t_表名; curdate() 只显示 年月日 select curdate(),NOW() FROM TB_表名; 如果直接做减法,只能得到两个时间相差多少天 select (NOW()-日期时间字段) FROM T_表名; 若不要 时分秒,可以考虑

  • 对Django中的权限和分组管理实例讲解

    权限 Django中内置了权限的功能.他的权限都是针对表或者说是模型级别的.比如对某个模型上的数据是否可以进行增删改查操作.他不能针对数据级别的,比如对某个表中的某条数据能否进行增删改查操作(如果要实现数据级别的,考虑使用django-guardian).创建完一个模型后,针对这个模型默认就有四种权限,分别是增/删/改/查.可以在执行完migrate命令后,查看数据库中的auth_permission表中的所有权限. 字段: content_type_id:是一个外键,参考表是django_co

  • Yii2.0中的COOKIE和SESSION用法

    1.Cookie Yii2的Cookie主要是通过yii/web/Request和yii/web/Response进行操作的 ,通过/Yii::$app->response->getCookies()->add()添加Cookie,通过/Yii::$app->request->cookies读取Cookie. 1)添加一个Cookie <?php //第一种方法 $cookie = new /yii/web/Cookie(); $cookie -> name =

  • 对Django中内置的User模型实例详解

    User模型 User模型是这个框架的核心部分.他的完整的路径是在django.contrib.auth.models.User. 字段 内置的User模型拥有以下的字段: 1.username: 用户名.150个字符以内.可以包含数字和英文字符,以及_.@.+..和-字符.不能为空,且必须唯一! 2.first_name:歪果仁的first_name,在30个字符以内.可以为空. 3.last_name:歪果仁的last_name,在150个字符以内.可以为空. 4.email:邮箱.可以为空

  • 在Django中预防CSRF攻击的操作

    CSRF全拼为Cross Site Request Forgery,译为跨站请求伪造. CSRF指攻击者盗用了你的身份,以你的名义发送恶意请求. ( 包括:以你名义发送邮件,发消息,盗取你的账号,甚至于购买商品,虚拟货币转账-) 造成的问题:个人隐私泄露以及财产安全. CSRF攻击示意图 客户端访问服务器时没有同服务器做安全验证 防止 CSRF 攻击 步骤: 1. 在客户端向后端请求界面数据的时候,后端会往响应中的 cookie 中设置 csrf_token 的值 2. 在 Form 表单中添加

  • flask框架中的cookie和session使用

    文章介绍了flask框架中的cookie和session.Session是在服务器端保存的一个数据结构,用来跟踪用户的状态,这个数据可以保存在集群.数据库.文件中.Cookie是客户端保存用户信息的一种机制,用来记录用户的一些信息,也是实现Session的一种方式. WEB -> cookie & session 由于HTTP协议是无状态的协议,所以服务端需要记录用户的状态时,就需要用某种机制来识具体的用户,这个机制就是Session.典型的场景比如购物车,当你点击下单按钮时,由于HTTP协

  • IOS中各种手势操作实例代码

    先看下效果 手势相关的介绍 IOS中手势操作一般是 UIGestureRecognizer 类的几个手势子类去实现,一般我们用到的手势就这么5种: 1.点击  UITapGestureRecognizer 2.平移  UIPanGestureRecognizer 3.缩放  UIPinchGestureRecognizer 4.旋转  UIRotationGestureRecognizer 5.轻扫  UISwipeGestureRecognizer 我们上面这个实例中就用到了上面这5种手势,不

  • Django中反向生成models.py的实例讲解

    命令行中进入Django项目目录,执行 python manage.py inspectdb testmodel_test 其中testmodel_test为数据表,生成的结果 from django.db import models class TestmodelTest(models.Model): name = models.CharField(max_length=20) c1 = models.CharField(max_length=255, blank=True, null=Tru

随机推荐