Cookie是什么,维基百科里是这么说的
Cookie(复数形态Cookies),中文名称为“小型文本文件”或“小甜饼”,指某些网站为了辨别用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)。
Web 开发里 Cookie 的含义,大概可以这么理解:
1.Cookie 是浏览器访问服务器后,服务器传给浏览器的一段数据。
2.浏览器需要保存这段数据,不得轻易删除。
3.此后每次浏览器访问该服务器,都必须带上这段数据。
Cookie怎么得到?
服务器通过Set-Cookie 响应头设置Cookie
浏览器得到Cookie后,每次请求都要带上Cookie
服务器读取Cookie就知道登录用户的信息
Cookie一般有两个作用
第一个是作用识别用户的身份
第二个作用是记录历史信息
用一个例子说明:
假设我们去一个公园,需要购买门票,这个门票的有效期为1一天,也就是在这一天内我们可以凭着这张票随意的进出公园。也就是说可以把每一次进入公园当作是一次http请求,这个票就相当于我们设置的Cookie,正是有了这个票(Cookie),我们可以顺利的进入这个公园(访问网站)。
Cookie保存在哪?
Cookie总是保存在客户端中,按在客户端中的存储位置,可分为内存Cookie和硬盘Cookie。
内存Cookie由浏览器维护,保存在内存中,浏览器关闭后就消失了,其存在时间是短暂的。
硬盘Cookie保存在硬盘里,有一个期限,除非用户手工清理或到了过期时间,硬盘Cookie不会被删除。
Cookie的特点
cookie是可以修改的,有可能有安全问题
不同浏览器间的cookie是不可访问的
Cookie的缺陷
Cookie会被附加在每个HTTP请求中,所以无形中增加了流量。
由于在HTTP请求中的Cookie是明文传递的,所以安全性成问题,除非用HTTPS。
Cookie的大小限制在4KB左右,对于复杂的存储需求来说是不够用的