面试取经:网络篇-保存数据三剑客

38 阅读1分钟

cookie、sessionStorage、localStorage 区别

都是保存本地数据的方式

cookie 出现最早,兼容性好,所有浏览器都支持。浏览器针对cookie有一些默认行为

  • 响应头出现set-cookie字段时,浏览器会自动保存cookie的值
  • 浏览器发送请求时,会自动附带匹配的cookie

但cookie 容易被利用来进行攻击,如CSRF

HTML 5 新增了 sessionStorage 和 localStorage

sessionStorage 保存临时数据,会话结束即失效,localStorage 保存持久数据,需要手动清除 ,两者由前端开发者控制,难以被攻击

但存储总归有上限

  • 浏览器限制同一个域下的cookie总量为约4k
  • sessionStorage 和 localStorage约 5-10M

cookie 会与domain、path关联,sessionStorage和localStorage只和domain关联