关于Cookie要懂的知识

时间:2023-03-24
本文章向大家介绍关于Cookie要懂的知识,主要内容包括什么是Cookie?、Cookie的作用和特性?、Cookie和Session、使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

☞演示

  1. 什么是Cookie?

http是一个无状态协议,它不对之前发生过的请求和响应的状态进行管理。这样就可能导致,我们登陆一个网站后,每次跳转新页面,之前的登陆状态都不能被记住,要重新登陆等问题。

因此,Cookie技术被引入了。

Cookie是存储在浏览器端的文本数据,单个大小不超过4kb。它通过在请求和响应数据中写入Cookie信息,对客户端的状态进行记录。

【Cookie机制的基本原理】

Cookie会根据从服务器端发送的响应报文内的一个叫Set-Cookie的首部字段信息,通知客户端保存Cookie。当客户端第二次访问该服务器时会自动的将该Cookie回传给服务器,来实现用户状态的跟踪。

  1. Cookie的作用和特性?

利用cookie记录状态我们可以实现自动登录、显示近期访问、跟踪上次访问时间、身份验证等功能。

不过,这种状态记录不是永久的。我们有时候可能会发现,自己一直登陆状态开着网页,一段时间回来再想访问新页面,又回跳出登陆窗口。这是因为Cookie是有有效期的。

Cookie的有效期可分为会话性和持久性:

【会话性】Cookie仅会保存在客户端的内存中,关闭客户端时,cookie失效

【持久性】cookie会保存在用户的硬盘中,生存期结束或用户主动销毁时失效(我们可以认为设置cookie的有效时间)

  1. Cookie和Session

Session机制也是用来解决http无状态的问题,可以识别用户。区别是:

Cookie数据存储在客户端浏览器上,而Session数据存储在服务器上,且通常需要Cookie机制来辅助实现。

类比一下:

你在理发店办了张卡。你的卡有个编号01,那理发店后台也会有一个对应的编号,对应你这个客户。这样下次你刷卡时,理发店一刷后台就能查到你是谁,卡里余额等信息啦~

这个场景里的“卡”就像Cookie,而理发店后台的编号可以理解为Session id,你卡的信息存在了理发店后台,这个机制就像Session。

Session数据存在服务器的优点在于,就是换了客户端,服务器记录的信息还是会存在的。比如我们加进购物车的商品,在不同客户端都能看到。

☞演示完毕

原文地址:https://www.cnblogs.com/xdedm-Lisa/p/17251253.html