我正在使用WebDav將元數據放在服務器的文件和文件夾上,以及緩存以避免對服務器的不必要的請求,這取決於文件的ETag屬性。更新HTTP ETag
基本上,我發送一個HEAD請求,並檢查ETag是否與我在本地的相匹配。如果沒有,那麼我發送一個更大,更慢的PROPFIND方法來檢索其他屬性。
我構建這個緩存的想法是,每次修改文件時都會更改ETag,包括修改,添加或刪除元數據時。
不過,我最近發現,情況並非如此:
因爲客戶可能會被迫提示用戶或扔掉改變 的內容,如果ETag的變化,WebDAV服務器應該不會改變 ETag(或最後修改時間)對於具有未更改的主體和位置的資源。 ETag代表資源內容的狀態或 。 沒有類似的方法可以判斷 屬性是否已更改。
(RFC 4918,http://www.webdav.org/specs/rfc4918.html#etag,重點煤礦)
因爲每當性質改變無效的緩存是對我很重要,我想知道:有沒有辦法手動指示web服務器更新的ETag ?