django5.3 cookies和session

django: cookies和session

cookies和session:为了保持会话状态的两种存储技术。

  1. cookies:
    保存在客户端浏览器的存储空间上,在浏览器上以键值对的形式进行存储,键和值都是以ascii字符串的形式存储,存储的数据带有生命周期。
    cookies中的数据是按照域(地址栏里的域名)来存储隔离的,不同的域之间无法访问。
    cookies的内部的数据会在每次访问此网址的时候都会携带到服务器端,如果cookies过大会降低响应速度。

         存储cookies:HttpResponse.set_cookie(key,value='',max_age=None,expirs=None)
         删除cookies:HttpResponse.delete_cookie(key):删除指定的key的cookie,若key不存在则什么也不发生
         获取cookies:通过request.COOKIES绑定的字典(dict)获取客户端的COOKIES数据:value=request.COOKIES.get('cookies名','默认值')
    
  2. session:
    把所有的状态数据保存在服务器上。
    客户端访问服务器时,服务器会创建为每个客户端传建一个独立的session,并把sessionID发送给客户端,客户端浏览器将sessionID保存在自己的cookies中,之后当浏览器访问服务器时,服务器就会检查传上来的cookies中的sessionID。因此使用session时需要在浏览器客户端启动cookie。
    对session的操作类似于字典:

    	保存session的值到服务器:request.session['KEY']=VALUE;
        获取session的值:value=request.session.get('KEY',默认值);
        删除:del request.session['KEY']
    

Django中的session数据存储在数据库中,django_session表是单表设计,且该表数据量持续增加。session数据过多时,可以使用python manage.py clearsessions 删除过期的数据。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值