首页 常识
您的位置: 首页 > 常识 >

cookie是什么意思需要阻止吗(客户端禁用cookie后有什么影响?)

100次浏览     发布时间:2024-11-13 10:10:19    

前言

session和cookie有什么区别在面试中是高频问题,小伙伴们在开发过程中经常使用,但是很多小伙伴对原理还不甚了解。今天就详细聊一聊!

什么是cookie

cookie是由服务器生成,发送给客户端浏览器保存的数据。浏览器再次访问该网站时会携带这个数据,向服务器标明两次请求来自同一个客户端。由于HTTP协议是无状态的,因此cookie主要是为了标记用户的状态而存在的。

什么是session

session同样是服务器生成的一段数据,它保存在服务器端。浏览器访问服务器时,服务器把客户端信息记录在服务器session里。客户端再次访问的时候,就可以从session中取得属于自己的信息。

区别

客户端浏览器禁用cookie会出现什么情况?

要说清楚这个问题,咱们先得弄清楚二者是怎么配合的。先看下图

当用户第一次请求服务器的时候,服务器创建该用户对应的 Session,请求返回时将此 并把Session的唯一标识信息 SessionID返回给浏览器。浏览器接收到服务器返回的SessionID后,会将此信息存入到 Cookie 中,并记录此 SessionID 属于哪个域名。

当用户第二次访问服务器的时候,请求将 Cookie信息也发送给服务端,服务端会从Cookie中获取 SessionID后查找对应的 Session 信息,如果没有找到说明用户没有登录或者登录失效,如果找到 Session 证明用户已经登录可执行后面操作。

根据以上流程可知,SessionID是以cookie的形式存储在客户端,系统根据SessionID来验证用户登录状态。因此禁用了Cookie,Session也会失效。

客户端浏览器禁用cookie怎么办?

分布式 Session

大型项目后端往往需要多台服务器共同来支撑前端用户请求,这就造成了登陆可能在A服务器上操作,再次访问的可能就到B服务器上了。如果Session不能共享,就会造成登陆失效问题。一般有以下解决方案:

相关文章