HTTP之Cookie

一个WEB站点通常希望能够识别用户,既可能是因为服务器想限制用户的访问,也可能是因为服务器想把内容与用户身份联系起来。为此,HTTP使用了cookie。cookie允许站点跟踪用户。
这里写图片描述
如上图,cookie技术有4部分组成
1.在HTTP响应报文中有一个cookie首部行;
2.在HTTP请求报文中有一个cookie首部行;
3.在用户端系统中保留一个cookie文件,由用户浏览器管理;
4.在WEB站点有一个后端数据库;
以下是一个典型的例子
Tom总是在家里使用PC上的IE上网,他第一次访问淘宝。
当请求报文到达淘宝服务器时,该WEB站点将产生一个唯一识别码,并以此作为索引在它的后端数据库中产生一个表项。
接下来淘宝服务器用一个包含Set-cookie:首部行 的HTTP响应报文对TOM的浏览器进行响应,其中Set-cookie:首部行 含有识别码,
例如 该首部行可能是 Set-cookie:4567. 当TOM的浏览器收到该HTTP的响应报文时,它会看到该Set-cookie:首部行 。
注意到cookie文件已经有了用于Ebay的表项(??不懂),因为TOM曾访问过该站点。当TOM继续访问 淘宝网站时,每请求一个WEB页面,其浏览器就会从它的cookie文件中获取这个网站的识别码,并放到HTTP请求报文中含有识别码的cookie首部行。
特别是,发往淘宝服务器的每个HTTP请求报文都包含 cookie:4567
在这种方式下,淘宝服务器可以跟中TOM在该站点的活动。
淘宝网站不需要知道TOM的名字,但知道用户用4567访问了哪些页面,按照什么顺序,在什么时间。
淘宝使用cookie来提供购物车服务,即它为TOM维护所有想购买物品的列表,这样在TOM结束会话可以一起付费。
如果一星期以后TOM再次访问淘宝站点,他的浏览器会在其请求报文中使用首部行 Cookie:4567.淘宝站点将根据TOM过去访问淘宝的记录向他推荐产品,如果TOM在淘宝注册过,即提供了他的全名,地址,地址等,则淘宝在其数据库记录了这些信息,将他的全名与识别码关联(以及过去访问的所有页面)。这就实现了淘宝等电商网站如何实现“点击购物”即当TOM购买物品时,不用输姓名地址等信息。
从例子可以看出,cookie用于标识用户。用户首次访问站点时,可能需要提供一个用户标识(如用户名,密码)。在后续访问中,浏览器向服务器传递一个cookie首部,供服务器识别该用户。因此
cookie可以在无状态的HTTP上建立一个用户会话层。
例如:当用户登录一个基于WEB的邮件系统时,浏览器向服务器发送cookie信息,允许该服务器通过用户与应用程序之间的会话对用户进行验证。
– - - - - - - **************—————*******
尽管cookie能简化用户的购物活动,但是仍有很大争议,因为他们侵犯了用户的隐私。 结合cookie和用户提供的账户信息,WEB站点可以知道许多关于用户的信息,并可能出卖个给第三方。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值