zoukankan      html  css  js  c++  java
  • Cookie

    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 的参数
  • 相关阅读:
    算法与数据结构基础
    算法与数据结构基础
    算法与数据结构基础
    分布式系统理论进阶
    分布式系统理论进阶
    分布式系统理论基础
    分布式系统理论进阶
    分布式系统理论基础
    dht 分布式hash 一致性hash区别
    排期模板
  • 原文地址:https://www.cnblogs.com/horror/p/9477849.html
Copyright © 2011-2022 走看看