cookie、session和token的区别?

143 阅读1分钟

说一说cookie sessionStorage localStorage 区别?

Cookie、SessionStorage、 LocalStorage都是浏览器的本地存储

共同点

  • 都是存储在浏览器本地的。

不同点:

  • cookie 是由服务端写入的,而 SessionStorage,LocalStorage 都是由前端写入的。
  • cookie 的生命周期是在服务器端写入的时候就设置好的,LocalStorage 是写入就一直存在,除非手动清除,SessionStorage 是页面关闭时自动清除。
  • cookie 的存储空间比较小,大概 4kb,SessionStorage,LocalStorage 存储空间比较大,大概 5M。
  • cookie、SessionStorage,LocalStorage 数据共享都遵循同源原则,SessionStorage 还限制必须是同一个页面。
  • 在前端给后端发送请求的时候会自动携带 cookie 中的数据,但是,SessionStorage,LocalStorage 不会。

应用场景

  • cookie 一般用于存储登录验证信息 sessionId 或者 token。
  • LocalStorage 常用于存储不易变动的数据,减轻服务器的压力。
  • SessionStorage 可以用来检测用户是否是刷新进入页面。

cookie、session和token的区别?

  • session:保存在服务器当中,服务器的话呢,会有资源开销,同时呢,去实现分布式或者是跨系统比较困难。
  • cookie:保存在浏览器中,有大小限制,有状态。
  • token:客户端可以将token保存在任意地方,无限制、无状态,利于分布式部署。

cookie和缓存的区别?

  • cookie本身有大小限制,一般浏览器显示不超过4kb
  • 缓存是对一种静态资源的处理机制,而cookie是一种动态机制
  • 缓存大小受资源和磁盘空间的限制。
  • 作用不一样:
    1. 缓存可以从本地磁盘中显示文档,它可以加速页面的显示。
    2. 而cookie是用于服务器辨别用户的。