Cookie,通常指的是 HTTP Cookie(也叫 Web Cookie 或浏览器 Cookie),Cookie最早是网景公司的前雇员Lou Montulli在1993年3月的发明,它是一小段文本(通常很小,不超过4kb),可以保存在浏览器,其上承载了某些信息。
目的是为了保存一些状态信息,因为http是无状态的,主要有三个用途:
Cookie 曾一度用于客户端数据的存储,因当时并没有其它合适的存储办法而作为唯一的存储手段,但现在随着现代浏览器开始支持各种各样的存储方式,Cookie 渐渐被淘汰。由于服务器指定 Cookie 后,浏览器的每次请求都会携带 Cookie 数据,会带来额外的性能开销(尤其是在移动环境下)。新的浏览器API已经允许开发者直接将数据存储到本地,如使用 Web storage API (本地存储和会话存储)或 IndexedDB
Cookie只是一段文本而已,但是内容有格式要求:键值对形式,相互之间以分号;
隔开。
以下是请求报文中cookie的部分:
一般而言,用户很难体验到cookie的存在,一个网站可以有多个cookie。
Cookie的创建从用户第一次请求服务器起开始,服务器将会在响应头添加Set-Cookie
选项(可以重复):
HTTP/1.0 200 OK
Content-type: text/html
Set-Cookie: yummy_cookie=choco
Set-Cookie: tasty_cookie=strawberry[其他信息]
浏览器收到响应后通常会保存下 Cookie,之后根据其设置,对该服务器每次请求有选择的通过 Cookie 请求头部将 Cookie 信息发送给服务器。
Cookie未设置过期时间的话,将会在浏览器关闭的时候在内存中清楚。否则,将会保存为一个文件在指定位置。
原文:https://www.cnblogs.com/panshaojun/p/14892239.html