Cookie

2018-08-17 09:48:51来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

Cookie(就是保存在浏览器端的键值对,用于登录)

1、特点

1)保存在客户端,用户浏览器

2)可以主动清除
3)也可以被伪造

4)跨域名cookie不共享

5)浏览器可以设置不接受cookie(将不能登录页面)

6)可以设置超时时间

1 rep = redirect('/index.html')
2 
3 timeout = datetime.datetime.utcnow() + datetime.timedelta(seconds=5)
4 
5 rep.set_cookie('username',user,max_age=10,expires=timeout)
6 # max_age 和 expires 作用相同,expires用于IE

2、获取cookie

1 request.COOKIES['key']
2 request.get_signed_cookie(key, default=RAISE_ERROR, salt='', max_age=None)
3     参数:
4         default: 默认值
5            salt: 加密盐
6         max_age: 后台控制过期时间

3、设置cookie(服务端)

 1 rep = HttpResponse(...) 或 rep = render(request, ...)
 2  
 3 rep.set_cookie(key,value,...)
 4 rep.set_signed_cookie(key,value,salt='加密盐',...)
 5     参数:
 6         key,              键
 7         value='',         值
 8         max_age=None,     超时时间
 9         expires=None,     超时时间(IE requires expires, so set it if hasn't been already.)
10         path='/',         Cookie生效的路径,/ 表示根路径,特殊的:跟路径的cookie可以被任何url的页面访问
11         domain=None,      Cookie生效的域名
12         secure=False,     https传输
13         httponly=False    只能http协议传输,无法被JavaScript获取(不是绝对,底层抓包可以获取到也可以被覆盖)

由于cookie保存在客户端的电脑上,所以,JavaScript和jquery也可以操作cookie。

  两种方式:1)自己写dom (document.cookie)  2)jQuery插件-->jquery.cookie.js (且必须使用jQuery)

1 <script src='/static/js/jquery.cookie.js'></script>
2 $.cookie("list_pager_num", 30,{ path: '/' });
1 $.cookie(key)                 # 获取值(内部 split , 正则)
2 
3 $.cookie(key,value)             # 设置值
4 
5 $.cookie(key,value,{...})     # 其中{...}内为set_cookie 的参数

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Python 学习笔记之基础知识一

下一篇:Python:bs4的使用