客户端或服务器上的ASP.NET缓存

时间:2009-11-25 09:25:17

标签: asp.net caching

如果在HTTP handler中设置缓存(如下所示),它会缓存在服务器或客户端上,还是两者都缓存?

_context.Response.Cache.SetCacheability(HttpCacheability.Public);
_context.Response.Cache.SetExpires(DateTime.Now.AddSeconds(180));

4 个答案:

答案 0 :(得分:2)

以下电话:

_context.Response.Cache.SetCacheability(HttpCacheability.Public);

事实证明,除了设置Cache-Control: public HTTP标头之外,还可以启用服务器端输出缓存

答案 1 :(得分:1)

这设置了http标头,这意味着它将被缓存:

  • 客户
  • 服务器“正在途中”到客户端,例如ISA服务器

答案 2 :(得分:0)

您上面使用的代码会将内容缓存在客户端浏览器上。

如果内容的失效日期在指定的时间内,则浏览器(客户端)将发出304“未修改”,即内容被缓存而不是从服务器重新获取。

希望这有帮助

答案 3 :(得分:0)

Cache-Control:public指定客户端和共享(代理)缓存可以缓存响应。

http://msdn.microsoft.com/en-us/library/system.web.httpcacheability(VS.71).aspx

此致 --Jocke