• Cookie总结


    Domain

        Cookie的domain属性就是为了让浏览器根据页面请求路径的domain值,获取匹配的cookie,并把这些cookie发送给服务器。匹配规则如下:如果Cookie的domain为abc.com,则域名为abc.com, hello.abc.com, abcd.abc.com,即该域名以及该域名的子域名都可以访问。而如果cookie的domain为hello.abc.com上,则abc.com不可以访问该域名,只有hello.abc.com以及它的子域名可以访问。因此可以说cookie的domain访问权限是向下继承的,即子域名可以访问父域名的cookie而父域名不可以访问子域名的cookie。当然其它域名如autodesk.com等跨域名访问更是不可以的。

        Cookie的设置权限同cookie的访问权限差不多,例如hello.abc.com可以将cookie的domain设为hello.abc.com或abc.com而不可以设置到它的子值域名如aaa.hello.abc.com。通常SSO就是将cookie的domain设为最顶级的域名,如autodesk.com,这样所有autodesk的子域名就都可以获取该cookie了。

    Path

        Path和Domain是两种最常见的限定cookie访问范围的手段,domain是以域名的方式,而path则是以目录的方式,因为很多时候,一个目录下有多个站点而又没办法设子域名时,通常就以目录的方式组织访问多站点,例如company.com/hr,  company.com/job,因为概念上和domain很相似,因此访问/设置的限定也差不多:company.com/hr可以将cookie的path设置为company.com/, company/hr,而不可以设为company.com/hr/career或company.com/inside。

    Expires – 过期时间

       指定cookie的生命期。具体是值是过期日期。如果想让cookie的存在期限超过当前浏览器会话时间,就必须使用这个属性。当过了到期日期时,浏览器就可以删除cookie文件,没有任何影响。其实可以根据过期时间的设定方式把cookie分成两类: 硬盘cookie,是指在你设置了cookie的Expires属性,此时cookie将保存到你的硬盘上,关闭浏览器不会删除cookie,只有等cookie过期后才会被删除; 内存cookie,是指没有设在cookie的Expires的属性,此时cookie将停留在客户端的内存中,关闭浏览器后cookie将被删除,因此这种cookie的生命周期取决于浏览器的打开时间。

    删除Cookie

       没有直接的方法去删除cookie,如果要删除cookie,只需要将cookie的生命周期改成过去时间,浏览器会把过期的cookie删除掉。

    Secure

      指定cookie的值通过网络如何在用户和WEB服务器之间传递。这个属性的值或者是“secure”,或者为空。缺省情况下,该属性为空,也就是使用不安全的HTTP连接传递数据。如果一个 cookie 标记为secure,那么,它与WEB服务器之间就通过HTTPS或者其它安全协议传递数据。不过,设置了secure属性不代表其他人不能看到你机器本地保存的cookie。换句话说,把cookie设置为secure,只保证cookie与WEB服务器之间的数据传输过程加密,而保存在本地的cookie文件并不加密。如果想让本地cookie也加密,得自己加密数据。

     

    (路径"path"用于设置可以读取一个cookie的最
    顶层的目录.将cookie的路径设置为你的网页最顶层的目录可
    以让该该目录下的所有网页都能访问该cookie
    在你的cookie中加入path=/; 如果你只想让"food" 目录
    中的网页可以使用该cookie,则你加入path=/food)

  • 相关阅读:
    每天干的啥?(2021.1)
    每天干的啥?(2020.12)
    每天干的啥?(2020.11)
    每天干的啥?(2020.10)
    每天干的啥?(2020.9)
    每天干的啥?(2020.8)
    每天干的啥?(2020.7)
    每天干的啥?(2020.6)
    每天干的啥?(2020.5)
    每天干的啥?(2020.4)
  • 原文地址:https://www.cnblogs.com/monian/p/2194436.html
Copyright © 2020-2023  润新知