https://blog.csdn.net/qq_28296925/article/details/80921585
https://www.cnblogs.com/songanwei/p/9387696.html


存放位置

  • cookie存放在客户端的浏览器上,session存放在服务端
  • cookie会存放指向服务端session的id(jsessionid)
  • cookie只存储简单类型数据(string),session可存放复杂数据类型

概念

两方都是来存储用户缓存数据

  • session用来存放会话记录的操作记录信息(因为http是无状态的,就需要用session来存储会话状态)

这是为了用户如果在同一客户端发送多次请求,可能就不会被认定为是同一次会话,体验极差,所以就出现了session。但我们也不清楚要去取哪个session,就将唯一表示sessionid存放到cookie中,而cookie存放在客户端的浏览器中

图片说明
图片说明

安全性

  • cookie由于存放在浏览器上,所以可以被用户修改,不安全

生命周期

  • cookie一般会一直存放到浏览器,不会因为浏览器关闭而消失,除非过期。session的话是指某一次会话,关闭浏览器就找不到原来的session,所以需要将session_id存放到cookie中
  • 另外保存session_id的方式还有url重写、表单隐藏域