Cookie总结

发布时间 2023-03-29 17:03:59作者: 帕拉利斯

Cookie

  浏览器存储数据的一种方式

  存储在用户本地,而不是存储在服务器上

  可以随着浏览器每次请求发送到服务器端

Cookie用法

  写入Cookie

  document.cookie = 'username=alex;max-age=5';

  document.cookie = 'age=18;domain=.imooc,com;max-age=5';

  读取Cookie

  document.cookie //"username=alex;age=18"

 Cookie的属性

  名称(Name)和值(Value)

    创建Cookie时必须填写 其它属性可以使用默认值

    如果包含非英文字母 写入时要用 encodeURLComponent()编码

    如果写入时编码 读取是要用 decodeURLComponent()解码

  失效(到期)时间

    失效Cookie 会被浏览器消除

    如果没有设置失效时间 默认会话结束后 Cookie会被清除

    想Cookie长时间存在 可以设置Expires或Max-Age

    

    expires值为Date类型,表示具体什么时间过期

    max-age值为数字 表示当前时间家多少秒后过期 单位是秒

    如果设置 max-age的值是0或附属 则Cookie会被删除

  Domain

    Domain限定了访问Cookie的范围(不同域下)

    使用JS只能写入/读取当前域或父域的Cookie 无法写入 读取其他域的Cookie

  Path

    限定了访问Cookie的范围(同域不同路径下)

    使用JS智能写入/读取当前路径和上级路径的Cookie无法写入/读取其他路径的Cookie

  当Name Domain Path 这3个字段都相同的时候才是同一个Cookie

  HttpOnly

    前端不能通过JS去设置HttpOnly类型的Cookie这种类型的Cookie只能是后端来设置

    只要HttpOnly类型的通过 document.cookie是获取不到的 也不能进行修改

  Secure

    Secure 限定了只有在使用了https而不是http的情况下才可以发送给服务端

  Domain PathSecure 都要满足条件 还不能过期的Cookie才能随着请求发送到服务端