什么是Cookie(什么是cookie和session)
什么是Cookie,什么是cookie和session。小编来告诉你更多相关信息。
服务器为每个用户创建一个会话,存储用户的相关信息,以便于多次请求能够定位到同一个上下文。
怎么来理解这话呢?
比如我们上网登录一个购物网站,第一次肯定需要输入帐号密码的,但是你会发现如果你关闭网页,然后再打开就不用进行登录操作了,已经是登录状态。这里用到的就是session机制。由于http协议是无状态的,但是服务器有时需要记录用户的状态,来减少不必要的操作。如果一个网站不断让你进行登录,估计就不会有什么用户来用了。
session是个什么原理?
由于http 是无状态的,这就意味着依靠http我们无法得知是谁发起了一个请求。如果需要知道这个请求是谁发出时,我们就要传输额外的信息来进行判别。当一个用户第一次在session中保存信息时,服务器会在http协议中告诉客户端在cookie中设置一个字段保存好所谓的一个sessionID。这个用户下一次发出任何其他请求的时候,都把这个sessionID 传回给服务器。服务器就通过这个sessionID 来找到对应的用户信息。服务器需要保证sessionID的唯一性。
session存放在哪?
session可以存放在文件,内存,数据库等等。当网站用户越来越多,可能需要建立专门的session服务器集群,用来保存用户信息。
session 与 cookie的关系
为什么不把用户信息放在cookie中,每次请求把用户信息带上?
第一出于安全考虑,如果cookie被人窃取那么你的用户信息就会被盗用造成损失。
第二cookie能存储的空间有限,数据量稍微大一点就可能存不下了。