Etag 主要为了解决 Last-Modified 无法解决的一些问题。
1、一些文件也许会周期性的更改,但是他的内容并不改变(仅仅改变的修改时间),这个时候我们并不希望客户端认为这个文件被修改了,而重新GET;
2、某些文件修改非常频繁,比如在秒以下的时间内进行修改,(比方说1s内修改了N次),If-Modified-Since能检查到的粒度是s级的,这种修改无法判断(或者说UNIX记录MTIME只能精确到秒)
3、某些服务器不能精确的得到文件的最后修改时间;
为此,HTTP/1.1引入了 Etag(Entity Tags).
1、一些文件也许会周期性的更改,但是他的内容并不改变(仅仅改变的修改时间),这个时候我们并不希望客户端认为这个文件被修改了,而重新GET;
2、某些文件修改非常频繁,比如在秒以下的时间内进行修改,(比方说1s内修改了N次),If-Modified-Since能检查到的粒度是s级的,这种修改无法判断(或者说UNIX记录MTIME只能精确到秒)
3、某些服务器不能精确的得到文件的最后修改时间;
为此,HTTP/1.1引入了 Etag(Entity Tags).
2018-04-06
那些问ture是错的但是为什么执行没有错误的,我解释一下,因为false、0这种值,在if判断里是被判定为不符合的,所以如果他get传的值不为0,那么程序运行正常,如果传了0,那么赋值为ture,这个时候,if判断这个值,就相当于是判断他是否存在值,而ture不代表否定,也就是说:“有值,判断通过。”,如果是true则又是另一种说法:“肯定,判断通过。”。总之,老师这里虽然写错了,但是,阴差阳错的却也是符合需求的,不影响程序的执行。
2018-01-04