• django cookie 提供的功能 参数


    # 用户发来数据带来所有COOKIES 这个cookie是字典
    request.COOKIES

    # 获取字典 获取cookie
    request.COOKIES["username111"]
    # get方法获取字典 cookie
    request.COOKIES.get("username111")


    服务器端可以给用户写cookie 设置cookie
    # 设置cookie
        response = render(request,"index.html")
        response = redirect("/index/")
        # 返回用户cookie
        # set_cookie()第一个值是key 第二个值是value
        # 给用户设置cookie也是key 和value
        response.set_cookie("key","value")
        return response
    
    
    
    
    用户登录,登录成功之后只要不关闭浏览器,cookie一直生效。后台重启,cookie一直存在

    设置cookie时 后面不加任何参数,表示关闭浏览器时候,cookie就失效了,再打开浏览器就要重新登录了

    rep = HttpResponse(...) 或 rep = render(request, ...)
     
    rep.set_cookie(key,value,...)
    
    参数:
            key,              键
            value='',         值
            max_age=None,     超时时间
            expires=None,     超时时间(IE requires expires, so set it if hasn't been already.)
            path='/',         Cookie生效的路径,/ 表示根路径,特殊的:跟路径的cookie可以被任何url的页面访问
            domain=None,      Cookie生效的域名
            secure=False,     https传输
            httponly=False    只能http协议传输,无法被JavaScript获取(不是绝对,底层抓包可以获取到也可以被覆盖)
    
    
    max_age 设置cookie超时时间 , 例如 max_age=10 10秒后cookie过期  登录状态只能保存10秒

    # 设置cookie
        response = render(request,"index.html")
        response = redirect("/index/")
        # 返回用户cookie
        # set_cookie()第一个值是key 第二个值是value
        # 给用户设置cookie也是key 和value
    
        # 设置cookie,关闭浏览器是失效
        response.set_cookie("key","value")
    
        #设置cookie 超时时间,N秒之后失效
        response.set_cookie("key", "value",max_age=1000)
        return response
    
    

    expires 也是超时时间,区别是max_age以秒为单位,expires是用datetime实现 超时时间
    导入datetime模块

    设置5秒超时时间
     # 利用datetime1的超时时间,到哪个时间节点过期
        import datetime
        # datetime.datetime.utcnow() 获取当前时间
        current_date = datetime.datetime.utcnow()
        # 设置了 时间差 设置这个时间是5秒过期
        current_date = current_date + datetime.timedelta(seconds=5)
        response.set_cookie("key", "value", current_date)
    
        return response

    所以设置cookie超时时间 两张方法 expires,max_age


    path='/' 生效路径 设置cookie默认是'/' 代表允许网站任何url 都可以访问cookie
    如果设置path='/index/' cookie只能index页面使用,其他url页面不能使用cookie

    domain=none 设置生效cookie的域名 只能是2级域名
     
     
  • 相关阅读:
    【Java例题】8.1手工编写加法器的可视化程序
    【Java例题】7.6文件题3-文本文件统计
    【Java例题】7.4 文件题1-学生成绩排序
    【Java例题】7.5 文件题2-学生成绩统计
    【Java例题】7.3 线程题3-素数线程
    Map
    sql常用函数
    面向对象的理解
    attr
    webService之wsdl文档
  • 原文地址:https://www.cnblogs.com/mingerlcm/p/10122263.html
Copyright © 2020-2023  润新知