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