兩者都代表郵件正文的哈希碼。兩者都可用於檢查自上次特定客戶端請求資源以來是否更改資源。如果他們做同樣的事情,他們爲什麼共存於RFC2616規範中?在HTTP協議中ETag和Content-MD5有什麼區別?
6
A
回答
11
兩個代表郵件正文的哈希和。
不完全。 Content-MD5
是一個哈希,但ETag
是一個不透明的標識:客戶端不知道這意味着什麼。確實,生成適當的ETag
的一種方法是對資源的數據進行散列處理,但並不是唯一的方法。
兩者都可用於檢查自上次 由特定客戶端請求時是否更改資源。
這是真的,雖然在這兩種情況下,你都可以從理論上得到誤報和誤報。
如果他們做同樣的事情,他們爲什麼共存於RFC2616規範?
的共存,因爲他們的目的不同; 「他們做同樣的事情」是不正確的。
Content-MD5
旨在讓客戶驗證所傳輸的資源的完整性:它的含義是明確的,並且它不應該在已接收到響應後使用。
ETag
旨在被用於協調高速緩存。作爲對過程不透明,它允許從它的力學解耦「資源標識符」的語義(因此,服務器可以選擇使用它想要的任何標識方案,而且是免費的,而無需任何客戶端更改該方案在未來說)。此外,ETag
支持weak validation,允許種源的2按位不同的版本被作爲語義上等同處理。
相關問題
- 1. REST和HTTP協議有什麼區別?
- 2. WebSocket和STOMP協議有什麼區別?
- 3. 方法和協議有什麼區別
- 4. uwsgi協議和wsgi協議有什麼區別?
- 5. WebSocket和http協議的主要區別是什麼?
- 6. WebDriver協議中的keys和elementIdValue有什麼區別?
- 7. ejabberd中MAM協議的0和1之間有什麼區別?
- 8. Objective-C中正式和非正式協議有什麼區別?
- 9. NHTTP和HTTP有什麼區別?
- 10. NSURLConnection和ASI-HTTP-Request有什麼區別?
- 11. GCKDeviceManager協議 - 是什麼didDisconnectWithError之間的區別:和didDisconnectFromApplicationWithError :?
- 12. C#接口與Objective-C協議有什麼區別?
- 13. 類與協議之間有什麼區別
- 14. Windows Workflow Foundation 4.0中的協議和命名書籤有什麼區別?
- 15. Google協議緩衝區和HTTP
- 16. 有什麼區別`和$(Bash中有什麼區別?
- 17. c#和HTTP協議
- 18. HTTP和HTTPS協議
- 19. 協議和代表之間的區別?
- 20. MQTT和MODBUS協議之間的區別?
- 21. Tcp協議和遠程過程調用之間有什麼區別?
- 22. 在src或href中使用「http://」和「//」之間有什麼區別?
- 23. http協議句柄是什麼?
- 24. UML中的協作圖和通信圖有什麼區別?
- 25. WebDav協議VS HTTP協議
- 26. 在NSObject上使用非正式協議或使用可選方法的協議有什麼區別?
- 27. 在JavaScript中,'\'和'\ n'有什麼區別?
- 28. =和在mysql中有什麼區別?
- 29. 在Ember.js中,[]和Ember.A([])有什麼區別?
- 30. 在PHP中!==和!=有什麼區別?