由于 HTTP 协议是无状态的,因此若想保留用户的状态信息,需要使用到 Cookie 和 Session 技术。
Cookie:
1、服务端通过 Set-Cookie 响应头设置 Cookie2、客户端得到 Cookie 后,会在本地磁盘创建一个文件用于保存用户信息,每次请求都会带上该 Cookie
3、客户端发起请求,服务端读取用户 Cookie,获得用户信息
4、Cookie 并不是永久的,会在一定时间后失效
由于 Cookie 的安全性,引入了 Session 技术,Session 是基于 Cookie 实现的,Session 存储在服务端,服务端使用 Session 存储用户信息
1、Cookie 不再存储用户的全部信息,而是存储一个 SessionID
2、客户端发起请求,服务端通过 Set-Cookie 给客户端一个 SessionID(一串字符串)
3、客户端再次发起请求时,服务端会读取客户端 Cookie 中的 SessionID 信息
4、服务端通过 SessionID 在 Session 中读取用户信息