在前面的博客中介绍到在不同的浏览器中查看网页的Cookie,查看浏览器的Cookie,那么Cookie是什么呢?在这个文件中记录了哪些信息呢?
Cookie是一种能够让网站服务器把少量数据存到客户端的硬盘或内存,或者是从客户端的硬盘读取数据的一种技术。它是当你浏览某网站的时候,由Web服务器置于你硬盘上的一个非常小的文本文件。
记录以下信息:
- 用户ID
- 密码
- 浏览过的网页
- 停留的信息
- 其他
当再次访问该网站时,网站通过读取Cookie,得知用户的相关信息,就可以做出相应的动作,如:不需输入用户名及密码,就可以直接登录进去。
正统的cookie分发是通过扩展HTTP协议来实现的,服务器通过在HTTP的响应头中加上一行特殊的指示以提示浏览器按照指示生成相应cookie。然而纯粹的客户端脚本如JavaScript或者VBScript也可以生成cookie。
而cookie的使用是由浏览器按照一定的原则在后台自动发送给服务器的。浏览器检查所有存储的cookie,如果某个cookie所声明的作用范围大于等于将要请求的资源所在的位置,则把该cookie附在请求资源的HTTP请求头上发送给服务器。
cookie的内容主要包括:名字,值,过期时间,路径和域。路径与域一起构成cookie的作用范围。若不设置过期时间,则表示这个cookie的生命期为浏览器会话期间,关闭浏览器窗口,cookie就消失。这种生命期为浏览器会话期的cookie被称为会话cookie。
会话cookie一般不存储在硬盘上而是保存在内存里,当然这种行为并不是规范规定的。若设置了过期时间,浏览器就会把cookie保存到硬盘上,关闭后再次打开浏览器,这些cookie仍然有效直到超过设定的过期时间。存储在硬盘上的cookie可以在不同的浏览器。