gpt4 book ai didi

http - If-Unmodified-Since HTTP Header 有什么用?

转载 作者:可可西里 更新时间:2023-11-01 15:04:30 26 4
gpt4 key购买 nike

您知道 If-Unmodified-Since 在野外的任何实际用途吗?来自description , 看起来这个 header 是为了帮助避免脏写。即仅当自客户端可用的最后修改时间以来未修改此资源时才更新此资源。与 If-Modified-Since 不同,它似乎对缓存没有帮助。我错过了什么吗?

最佳答案

您可以使用它,例如对于 range request .
示例:您的客户请求资源 http://examp.le/foo?id=3 Contents-length 为 4096,但您的客户端仅请求前 1024 个字节。然后它可以(稍后)请求剩余的 3072 字节,但如果资源同时发生变化,那将没有意义。

编辑:如果资源同时发生变化,您可能不想更改/更新数据。例如。您请求客户记录并编辑某些内容。如果其他人同时更改了记录,这可能会导致不一致。因此,使用 if-unmodified-since(-I-retrieved-the-data) header 发送您的更新,如果记录已经更改,网络服务器将/应该拒绝您的更新 - 然后您的客户端可以请求“冲突”数据。

edit2:因为您已经要求“在野外对 If-Unmodified-Since 的任何实际使用”:见http://msdn.microsoft.com/en-us/library/dd179371.aspx#Subheading1 .
假设您首先 requested the Blob properties .现在你知道了Content-type 和 Content-length(也许你需要它来进行某种分配)。在您发送第二个 Get Blob 之前,某人/某事可能会更改 blob要求。如果您将 Last-Modified 的值作为 If-Unmodified-Since header 的值发送,则如果 blob 已更改,服务器将使用适当的错误代码进行响应。


这些是作为并发控制手段的乐观锁/标记锁的示例,其中 Last-Modified header 的值用作保护 token 。参见例如 https://en.wikipedia.org/wiki/Optimistic_concurrency_control

关于http - If-Unmodified-Since HTTP Header 有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1023648/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com