计算机网络应用层–cookie和web缓存
cookie:用户与服务器的交互
由于http服务器是无状态的,然而一个Web站点通常希望能够识别用户,可以用于将内容与用户身份联系起来,因为,HTTP使用了cookie,允许站点对用户进行跟踪。
cookie的组件:
- 在HTTP响应报文中的一个cookie首部行
- 在HTTP请求报文中的一个cookie首部行
- 在用户端系统中保留一个cookie文件,由用户浏览器管理
- 在Web站的一个后端数据库,用于存储映射关系
cookie的工作原理:
(图片来源:(计算机网络:自顶向下方法)
- 当第一次访问该Web站点时,发送的是普通的http报文,该报文到达服务器时,Web站点会产生一个唯一标识码,然后将其与用户一些信息的对应关系存储在数据库中。之后Web服务器发送响应报文,响应报文中包含cookie首部:Set-cookie 字段以及 标识码
- 当浏览器收到该带有Set-cookie字段的HTTP响应报文时,会在浏览器的管理cookie的文件中添加一行,包含服务器的主机名和Set-cookie中的识别码
- 之后又一次访问该Web站点时,每请求一个Web页面,浏览器都会从自己的cookie文件中获取该主机的对应识别码,并放到HTTP请求报文中包含识别码的cookie首部行中
- Web服务