你了解Cookie吗,简要说一下。
我们知道,浏览器向服务器发送请求,服务器做出响应之后,二者便会断开连接(会话结束),下次用户再来请求服务器时,服务器无法识别此用户身份。比如用户登录功能,如果没有Cookie机制的支持,那么只能通过查询数据库的方式实现用户认证,并且每次刷新页面,都要重新做一次用户认证,这要的话,即使时最简单的用户认证功能也会给服务器带来巨大的负载压力。这里简要介绍一下使用Cookie和Session实现cookie生命周期内,用户登陆一次即可的原理。用户首次进行登录认证时,服务器会产生一个cookie,并发送给浏览器,由于cookie是存储在浏览器端,容易泄露,其大小不能超过4KB,且不能支持中文,因此cookie中保存的并不是该用户的认证信息,而是保存sessionid。而用户的信息则存储在服务器的session域中,下一次该用户再次访问页面时,会携带sessionid,服务器通过sessionid,在session查找是否有该用户信息,完成登录认证,此流程不需要查询数据库。总而言之,cookie和session的出现是为了解决http协议无状态的弊端,让服务器和浏览器建立长久的会话。