• 07.会话跟踪技术cookie与session


    会话跟踪技术cookie与session

    01.会话跟踪:会话路径技术使用Cookie或session完成:
      我们知道HTTP协议是无状态协议,也就是说每个请求都是独立的!
      无法记录前一次请求的状态。但HTTP协议中可以使用Cookie来完成会话跟踪!
      在Web开发中,使用session来完成会话跟踪,session底层依赖Cookie技术

    02.Cookie概述
      Cookie是由服务器创建,然后通过响应发送给客户端的一个键值对。
      客户端会保存Cookie,并会标注出Cookie的来源(哪个服务器的Cookie)

      Cookie规范:
        *Cookie大小上限为4KB;
        *一个服务器最多在客户端浏览器上保存20个Cookie;
        *一个浏览器最多保存300个Cookie
        *不同浏览器之间是不共享Cookie的

    #设置cookie:key-value格式
    response = HttpResponse("success")
    response.set_cookie("date",date)
    
    #获取cookie:
    request.COOKIES
    
    删除cookie:
    response.delete_cookie("cookie_key",path="/",domain=name)

     

    03.Django中的session语法

    1、设置Sessions值
    request.session['session_name'] ="admin"
    2、获取Sessions值
    session_name = request.session["session_name"]
    3、删除Sessions值
    del request.session["session_name"]
    4、flush()
    删除当前的会话数据并删除会话的Cookie。
    这用于确保前面的会话数据不可以再次被用户的浏览器访问
    5、get(key, default=None)
    fav_color = request.session.get('fav_color', 'red')
    6、pop(key)
    fav_color = request.session.pop('fav_color')
    7、keys()
    8、items()
    9、setdefault()
    10 用户session的随机字符串
    request.session.session_key

    # 将所有Session失效日期小于当前日期的数据删除
    request.session.clear_expired()

    # 检查 用户session的随机字符串 在数据库中是否
    request.session.exists("session_key")

    # 删除当前用户的所有Session数据
    request.session.delete("session_key")

    request.session.set_expiry(value)
    * 如果value是个整数,session会在些秒数后失效。
    * 如果value是个datatime或timedelta,session就会在这个时间后失效。
    * 如果value是0,用户关闭浏览器session就会失效。
    * 如果value是None,session会依赖全局session失效策略。

  • 相关阅读:
    Why is exponentiation applied right to left? Python
    What do these operators mean (** , ^ , %, //)? [closed] Python
    Difference between npm and yarn
    could not find a part GeneratedMSBuildEditorConfig.editorconfig
    git checkout b 本地分支 origin/远程分支 规格严格
    Instant Gratification with Flowable Open Source 规格严格
    【Linux】Linux中在mate桌面和gnome桌面root自动登录设置 规格严格
    Centos7修改网卡名字方法 规格严格
    Flowable的基本操作 规格严格
    SpringBoot+flowable实现工作流 规格严格
  • 原文地址:https://www.cnblogs.com/QQL-anatkh/p/9597626.html
Copyright © 2020-2023  润新知