HTTP Cookie 小抄

HTTP Cookie(也叫 Web Cookie 或浏览器 Cookie)是服务器发送到用户代理(一般是浏览器,以下统一用浏览器表示)并保存在本地的一小块数据,它会在浏览器下次向同一服务器再发起请求时被携带并发送到服务器上。虽然 Cookie 具有许多降低其安全性的缺陷和隐私问题,但由于历史原因,Cookie 和 Set-Cookie 头字段还是被广泛的在互联网上使用。

Cookie 主要用于以下三个方面:

  • 会话状态管理(如用户登录状态、购物车、游戏分数或其它需要记录的信息)
  • 个性化设置(如用户自定义设置、主题等)
  • 浏览器行为跟踪(如跟踪分析用户行为等)

阅读更多

cookie、sessionStorage、localStorage区别与作用

相同点:

  1. 都是客户端临时信息对象
  2. 只能存储字符串类型对象

不同点:

  1. 生命周期不同,cookie可以设置过期时间,localStorage始终有效,sessionStorage在关闭窗口后失效
  2. cookie的主要内容包括:名字、值、过期时间、路径和域,有路径的概念,可以限制cookie只属于某个路径下
  3. 存储大小限制不同,cookie 4k localStorage/sessionStorage 5M
  4. cookie始终在http请求中携带,Web Storage仅在本地保存
  5. 作用域不同,sessionStorage在不同的浏览器窗口中不共享,即使是同一个页面,localStorage/cookie在所有同源的窗口中是共享的。
  6. Web Storage 有API setItem getItem removeItem clear, cookie需要自己解析
  7. document.cookie window.localStorage window.sessionStorage
  8. web storage是html5引入的,部分老旧浏览器不支持