Cookie

作者: jackie季 | 来源:发表于2018-09-04 21:22 被阅读0次

    Cookie是什么

    1. Cookie 是浏览器访问服务器后,服务器传给浏览器的一段数据
    2. 浏览器得到Cookie后会进行保存
    3. 此后每次浏览器访问服务器时都会带上这个Cookie

    Cookie的作用

    1. 识别用户身份
    2. 记录历史

    设置Cookie

    服务器通过设置Set-Cookie响应头来设置Cookie
    Set-Cookie: <cookie-name>=<cookie-value>
    还可以添加前缀后缀:

    Set-Cookie: <cookie-name>=<cookie-value>; Expires=<date>
    Set-Cookie: <cookie-name>=<cookie-value>; Max-Age=<non-zero-digit>
    Set-Cookie: <cookie-name>=<cookie-value>; Domain=<domain-value>
    Set-Cookie: <cookie-name>=<cookie-value>; Path=<path-value>
    Set-Cookie: <cookie-name>=<cookie-value>; Secure
    Set-Cookie: <cookie-name>=<cookie-value>; HttpOnly
    
    • __Secure- 前缀:以 __Secure- 为前缀的 cookie,必须与 secure 属性一同设置,同时必须应用于安全页面(即使用 HTTPS 访问的页面)。
      Set-Cookie: __Secure-ID=123; Secure; Domain=example.com
    • __Host- 前缀: 以 __Host- 为前缀的 cookie,必须与 secure 属性一同设置,必须应用于安全页面(即使用 HTTPS 访问的页面),必须不能设置 domain 属性 (也就不会发送给子域),同时 path 属性的值必须为“/”。
      Set-Cookie: __Host-ID=123; Secure; Path=/
    • Expires=<date>:cookie 的最长有效时间,形式为符合 HTTP-date 规范的时间戳
    • Max-Age=<non-zero-digit>:在 cookie 失效之前需要经过的秒数。
    • Domain=<domain-value>:指定 cookie 可以送达的主机名。
    • Path=<path-value>:指定一个 URL 路径,这个路径必须出现在要请求的资源的路径中才可以发送 Cookie 首部。
    • Secure :一个带有安全属性的 cookie 只有在请求使用SSL和HTTPS协议的时候才会被发送到服务器。
    • HttpOnly:设置了 HttpOnly 属性的 cookie 不能使用 JavaScript 进行访问,以防范跨站脚本攻击

    Cookie的特点

    1. 遵循同源策略
    2. 可以设置有效期
    3. 最大容量为4K,不要存大量数据,影响传输效率
    4. 可以在浏览器端修改

    相关文章

      网友评论

          本文标题:Cookie

          本文链接:https://www.haomeiwen.com/subject/bybnwftx.html