Etag代理缓存:它做了什么?

时间:2016-04-22 09:21:21

标签: c# caching proxy etag

我使用ETags来提高性能。在代码中我设置了Cachability:

Response.Cache.SetCacheability(HttpCacheability.Public))

我理解“公共”是指客户端,服务器和服务器。代理。

但如果客户端没有本地缓存​​,那该怎么办呢? 代理和/或服务器是否仍然使用我的网站验证ETag,或者代理本身是否回答“我知道这一个。无需询问服务器?”

或者在其他情况下,如果启用了代理上的ETag-Caching,则以下方案仍然有效?

  1. 浏览器执行请求。返回ETag“ABBA”
  2. 浏览器向服务器发出另一个请求。 ETag“ABBA”被识别,返回304 2.1浏览器使用本地缓存
  3. 浏览器向服务器发出另一个请求,发送ETag“ABBA”。这次服务器确定数据已更改,因此它返回带有新Etag的新响应。
  4. 如果代理使用ETAg-Caching,它仍会询问服务器Etag是否有效,或者如果代理知道etag,请求是否结束?

0 个答案:

没有答案