因为http协议本身是无状态的,即http只是帮助我们把一个客户端请求,传送给服务端。仅仅用来传送请求,用来通信。
在实际中,我们编写Web程序时,往往都需要根据请求,来判断这个请求来自于哪个客户端,但是http只是负责通信,不会告诉服务器,这个请求是哪个客户端发来的。
这时候,利用session机制可以很好的帮助服务器归类请求,让服务器知道哪个请求属于哪个客户端发来的。
所以,session机制是在服务器端保持通信状态的一种方式。
如果一个客户端A第一次向服务器发送一个请求a,服务器会在本地创建一个session,并且用session id来唯一标志一个个session,处理完请求后,将session id和处理结果一起返回给客户端A,客户端A会存储session id。这样下次客户端A再次发送请求b时,带上这个session id,服务器在接收到请求b时,通过请求b中的session id就可以知道,之前的请求a和请求b都是一个客户端发来的。