HTTP协议本身是无法判断用户身份。所以需要cookie或者session。
1、什么是cookie?
cookie 是由 Web 服务器保存在用户浏览器上的文件( key-value 格式),可以包含用户相关的信 息。客户端向服务器发起请求,就提取浏览器中的用户信息由http 发送给服务器。
2、什么是session?
1、session 是浏览器和服务器会话过程中,服务器会分配的一块储存空间给 session 。
2、服务器默认为客户浏览器的 cookie 中设置 sessionid ,这个 sessionid 就和 cookie 对应,浏览器在向 服务器请求过程中传输的cookie 包含 sessionid ,服务器根据传输 cookie 中的 sessionid 获取出 会话中存储的信息,然后确定会话的身份信息。
3、cookie与session****区别
- cookie 数据存放在客户端上,安全性较差, session 数据放在服务器上,安全性相对更高。
- 单个 cookie 保存的数据不能超过 4K , session 无此限制 信息后,使用自己的私钥进行解密。 由于 非对称加密的方式不需要发送用来解密的私钥,所以可以保证安全性;但是和对称加密比起来,非常的慢。