session和cookie
Cookie
cookie:浏览器在电脑硬盘中开辟的一块空间,主要供服务器端存储数据。
- cookie中的数据是以域名的形式进行区分的。
- cookie中的数据是有过期时间的,超过时间数据会被浏览器自动删除。
- **cookie中的数据会随着请求被自动发送到服务器端。**
总结就是cookie是一块客户端的存储空间,作用:供服务器端存储数据,减小服务器端的压力
至于是怎么供服务端存储数据,等会来讲解
session
session:实际上就是一个对象,存储在服务器端的内存中,在session对象中也可以存储多条数据,每一条数据都有一个sessionid做为唯一标识。可以理解为服务端的存储空间
接下来我们就说一下服务端在客户端上存储数据:
如图所示,server在接收到客户端的请求参数后,生成sessionId,在本地存储一份后,并将他传递给客户端并存储到Cookie。
之后每次通信时,由于Cookie的特殊性,每次通话时都会自动携带Cookie中的信息,因此,server每次直接获取Cookie中的数据,直接判断用户身份
总结:session和Cookie其实就是两块存储空间,只不过一个是在client中,一个在server中。特别的是,这两块存储空间会有一些自身的特性