深入了解Etag

给各位同学,补充下基础知识

本期,我们讲etag  (Entity tags)

 

Etag,也叫做实体标签,是http1.1协议的一部分,顾名思义,就是标识实体的一个字符串,因为是

标识,所以唯一性,也是etag需要解决的问题。这里面所谓的实体(Entity)

包括图片、script脚本,样式表,文档等等。

 

Etag存在的意义,在于提供一种机制,验证浏览器是否在已经cache了服务器端的实体。

 

因此,eTag从本质上说,提供了一种实体验证机制,比last-modified更加灵活。

 

下面的例子,说明了Etag工作的流程

一个GET 

Request Headers

Host 192.168.1.39:81

User-Agent Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.0.4) Gecko/2008102920 Firefox/3.0.4

Accept image/png,image/*;q=0.8,*/*;q=0.5

Accept-Language zh-cn

Accept-Encoding gzip,deflate

Accept-Charset gb2312,utf-8;q=0.7,*;q=0.7

Keep-Alive 300

Connection keep-alive

Referer http://192.168.1.39:81/frame.php?frameon=yes&referer=http%3A//192.168.1.39%3A81/

If-Modified-Since Wed, 17 Dec 2008 08:12:18 GMT

If-None-Match “125835640″

Cache-Control . . . → Read More: 深入了解Etag