doraemon的python cookie和session(国庆大更新)
Posted 番茄炒蛋548542
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了doraemon的python cookie和session(国庆大更新)相关的知识,希望对你有一定的参考价值。
### 11.10 cookie和session #### 11.10.1 cookie 定义:保存在浏览器本地上的一组组键值对 为什么有cookie? - http协议是无状态的,每次http请求都是对立的,相互之间没有关联,yongcoolie保存状态 特点: 1. 由服务器让浏览器进行设置的 2. 浏览器保存在浏览器本地 3. 下次访问的时候自动携带 4. 应用场景:登录、保存浏览器习惯、简单的投票 django中操作cookie 设置: ```python ret = redirect(‘index‘) ret.set_cookie(‘key‘,‘value‘,max_age=1000,path=‘/‘) #没有加盐的 ret.set_signed_cookie(‘is_login‘,‘1‘,‘liujia‘) #加盐 ``` 获取 ```python request.COOKIES.get() request.COOKIES[] request.COOKIES{} #未加盐的获取方式 is_login = request.get_signed_cookie(‘is_login‘,salt=‘liujia‘,default=‘‘)#加盐的获取方式 ``` 删除 ```python ret = redirect(‘/login/‘) ret.delte_cookie(‘is_login‘) ``` #### 11.10.2 session 定义:保存在服务器上的一组组键值对(必须依赖cookie) 为什么要有session - cookie保存在浏览器本地,不安全 - 大小个数受到限制 django中操作session ```python request.session[key]=value #获取 request.session[key] request.session.get(key) #查看session的全部配置 from django.conf import global_settings #将所有session失效日子小于当前日期的数据删除 request.session.clear_expired() #检查回话session的key在数据库中书否存在 request.sessin.exists(‘session_key‘) #删除当前会话的所有session数据 删除session的数据 不删除cookie request.session.delete() #删除当前的会话数据并删除会话的cookie 删除session的数据 删除cookie request.session.flush() 这用于确保前面的绘画数据不可以再次被用户的浏览器访问 例如:django.contrib.auth.logout() 函数中就会调用它 #设置会话数据和cookie的超时时间 request.sessiont_exirpy(value) ``` ###
以上是关于doraemon的python cookie和session(国庆大更新)的主要内容,如果未能解决你的问题,请参考以下文章