kksk什么意思,Session 和 Cookies 有什么区别?

你好,我是前端西瓜的哥哥。

很多初学者不知道Session和Cookies的区别,今天带着西瓜哥哥来掌握这两个概念。

进入登录网站的表象网站的登录页,输入用户名和密码,然后单击“登录”按钮,登录成功。 然后,可以进行需要登录的操作,比如称赞西瓜哥哥的文章。

之后,打开此网站,就不需要输入用户名和密码了。

其实是因为你在用“看不见”用户凭证。 它被缓存在当前浏览器中,在它过期之前保持登录状态。

如果要打开另一个浏览器或在另一台计算机上打开它,则必须再次执行登录过程以获取用户证书并实现登录状态。

上面行为的底层发生了什么呢?

Session当用户向服务器发送用户名和密码时,服务器从用户表中确认用户名与密码一致。

user用户表可能如下所示:

user_id user_name password

请参见------------------------------------------------------- -

前端西瓜哥kksk456

如果watermelon ou114514用户名和密码正确,则会生成随机id作为用户证书,并存储在映射表中,以映射到相应的用户id。

可以保存在数据库中。

session_id user_id

----------------

kdj1231j也可以保存在存储器或redis等可高速访问的存储介质中。

此外,session_id在映射表中不能具有相同的值。 否则,张三就会注册得到李四的号码。

将这些用户证书(Session_id )存储在用户id中的映射存储称为session。

Session在会话的意义上,可以记录状态。 两人开始对话后,对话的时候,我们互相了解,但对话结束时,我们形同虚设。

已创建Cookiessession_id。 然后,将此sesson_id传递给浏览器,保存在浏览器中,并在每次后续请求时将此session_id带到浏览器中,以便服务器可以识别用户。

但是,浏览器的请求是基于HTTP协议,该协议的特点之一是无状态也就是说,实现协议时,不可能知道对方是谁,任意两个请求是独立的,一个请求的发布这样的话,就很难维持登录状态。

为了解决这个问题,出现了Cookies。 Cookies可以存储服务器返回的一部分信息,并在随后的请求中携带它。

服务端在HTTP响应标头字段中携带Set-Cookie字段,并按如下方式携带要设置的键值对和有效期等其他信息:

set-cookie : session _ id=kdj 1231 j; Max-Age=10000000当浏览器接收时,它将保存在浏览器中。 对于的每个请求,浏览器都会在HTTP请求标头中带来session_id信息。

Cookie: session_id=kdj1231j; 服务端取出session_id去session映射表中查找。

如果存在,我们将检索其用户id,根据该用户id获取您的银行余额等个人信息。

结尾Session是一个将用户证书(sesson_id )映射到用户id的映射表,用于通过用户证书标识用户。

Cookies是一种可用于在HTTP协议中存储状态的惊喜甜点,它可以存储从服务器返回的部分数据,并通过以下请求进行携带:

kksk什么意思

推荐阅读