简介

电脑中的 Cookies 是个什么东西?

Cookie是一小段文本信息,里面存储的都是一些字符串,一般大小只有几十到几百k之间,一般最大支持到4M(受浏览器限制)。它伴随着用户发出的请求,在浏览器和Web服务器之间传递。

因为电脑中的所有web请求都是使用http协议来进行传输的,而HTTP协议又是一个无状态的协议,那么对于同一个浏览器发出的多个服务请求(可以理解为:多个标签页相同的请求)时,web服务器是无法判断该请求是否来源于同一个浏览器(即可能存在使用不同浏览器做同样的请求)。

由于http的“无状态”这一特性严重阻碍了交互式Web应用程序的实现,所以需要额外的数据用于维护会话。Cookie正是这样的一段随HTTP请求一起被传递的额外数据。主要就是用来绕开HTTP的无状态性的“额外手段”之一。服务器可以设置或读取Cookies中包含信息,借此维护用户跟服务器会话中的状态。

典型应用

Cookie的其中一个典型的应用就是当用户在浏览器中登录一个网站时,网站往往会请求用户输入用户名和密码,并且提供“下次自动登录”功能。如果勾选了,那么用户下次访问同一网站时,会发现帐号已经登录了。这正是因为前一次登录时,服务器发送了包含登录凭据(用户名加密码的某种加密形式)的Cookie到用户的硬盘上。在下次访问该网站时,浏览器会发送该Cookie到网站进行鉴权,如果该Cookie尚未到期,服务器将认为鉴权通过,从而免除用户的登录操作。

分类

Cookie 按存储位置,可分为内存Cookie和硬盘Cookie两种。

内存Cookie:保存在内存里,由浏览器维护,浏览器关闭后就消失了,其存在时间是短暂的。
硬盘Cookie:保存在硬盘里,有存活时间期限,如果存活时间到期则由系统自动清理,不然只能自行手动清理。
所以,如果按存在时间分类的话,又可分为非持久Cookie和持久Cookie。

限制

由于cookies是基于浏览器管理的,所以不同的浏览器管理策略有所差异,一般如下:
文件大小限制:大多数浏览器支持最大为4096字节的Cookie。
文件数量限制:大多数浏览器只允许每个站点存储20个Cookie,如果超出20个将采用覆盖的形式进行处理。

生存周期

Cookie在创建时就会被指定一个Expire值,这就是Cookie的生存周期,在这个周期内Cookie有效,超出周期Cookie就会被清除。如果将Cookie的Expire值设置为“0”或“负值”,这样浏览器在关闭后,Cookie将立刻被清除。

Cookies查看工具

软件名:IE Cookie View

最后修改:2022 年 06 月 09 日
如果觉得我的文章对你有用,请随意赞赏