客户通过web缓存请求对象

客户通过web缓存请求对象

大致工作流程

  1. 客户浏览器向代理服务器发送请求
  2. 代理服务器先检查本地是否存储了该对象的副本,若有,则直接返回响应报文,实体体中包含该对象。若没有,则再向初始服务器发送对该对象的请求报文
  3. 初始服务器返回包含该对象的响应报文
  4. 代理服务器收到包含该对象的响应报文,将该对象的副本保存在本地,再向客户浏览器返回包含该对象的响应报文
  • 代理服务器具有双重角色,即客户和服务器

条件get请求

  • 可能存在一种情况,代理服务器缓存的对象是旧版本,即在代理服务器缓存了对象之后初始服务又对其进行了更改

  • 请求报文使用get方法,并且首部行中带有 If-modified-since 字段,这类请求就是条件请求。当这类请求发送到代理服务器后,代理服务器也会发送请求到初始服务器。若初始服务器的对象没有更新,它会返回一个响应报文,其中描述字段为 Not modified,状态码字段为304。