zoukankan      html  css  js  c++  java
  • Python--day72--Cookie和Session内容回顾

     1 1. Cookie是什么
     2         保存在浏览器端的键值对
     3         
     4         为什么要有Cookie?
     5             因为HTTP请求是无状态的
     6         
     7         Cookie的原理?
     8             服务端可以在返回响应的时候 做手脚
     9             在浏览器上写入键值对(Cookie)
    10             
    11             浏览器发送请求的时候会自动携带该网站保存在我浏览器的键值对(Cookie)
    12             
    13         Django 从请求携带的Cookie中取值:
    14             request.COOKIES.get("is_login")
    15             request.get_signed_cookie(key, default=None, salt="xxx")
    16         Django中设置Cookie:(针对的是响应对象)
    17             rep = HttpResponse()/render(request, "test.html)/redirect()
    18             rep.set_signed_cookie(key, value, salt="xxx", max_age=7)
    19         Django中删除Cookie:(注销)
    20             rep.delete_cookie(key)
    21 
    22     2. Session是什么
    23         Session保存在服务端的键值对
    24         
    25         Session依赖于Cookie
    26         
    27         dsadasdsadsafsjkndf: {"is_login": 1, "name": "xiaohei", "age":18}
    28         dsaasdaknfgreryywdf: {"is_login": 1, "name": "xiaobai", "age":20}
    29         wqrqrteknfgzddasqfg: {"is_login": 0, "name": "xiaohui", "age":48}
    30         
    31         给浏览器写入Cookie:
    32             sessionid:wqrqrteknfgzddasqfg
    33             
    34         1. 从用户发来的请求的Cookie中 根据 sessionid 取值, 取到 wqrqrteknfgzddasqfg
    35         2. 根据特殊字符串找到对应的 Session 数据  --> {"is_login": 0, "name": "xiaohui", "age":48}
    36         3. request.session.get("is_login")    --> 从Session取值
    37         
    38         
    39         Django中设置Session:
    40             request.session["is_login"] = 1
    41             request.session.set_expiry(7)  # 设置超时时间 (Cookie和Session数据的)
    42             
    43             
    44             在settings.py中设置,每次请求都刷新Session超时时间
    45             SESSION_SAVE_EVERY_REQUEST = True 
    46         
    47         Django中删除Session:
    48             request.session.flush()     清除Cookie和Session数据
    49             
    50             request.session.clear_expired()  将所有Session失效日期小于当前日期的数据删除
    51             


     

  • 相关阅读:
    java中的工厂模式(简单工厂模式+工厂方法模式)
    代码集合
    java读取文件的路径问题
    使用ZXing库生成二维码
    java设计模式-装饰者模式
    android文件流缓存
    java8 新特性
    Excel导出
    常用的在线工具
    Java加密简介
  • 原文地址:https://www.cnblogs.com/xudj/p/10683669.html
Copyright © 2011-2022 走看看