如果在HTTP handler中设置缓存(如下所示),它会缓存在服务器或客户端上,还是两者都缓存?
_context.Response.Cache.SetCacheability(HttpCacheability.Public);
_context.Response.Cache.SetExpires(DateTime.Now.AddSeconds(180));
答案 0 :(得分:2)
以下电话:
_context.Response.Cache.SetCacheability(HttpCacheability.Public);
事实证明,除了设置Cache-Control: public
HTTP标头之外,还可以启用服务器端输出缓存。
答案 1 :(得分:1)
这设置了http标头,这意味着它将被缓存:
答案 2 :(得分:0)
您上面使用的代码会将内容缓存在客户端浏览器上。
如果内容的失效日期在指定的时间内,则浏览器(客户端)将发出304“未修改”,即内容被缓存而不是从服务器重新获取。
希望这有帮助
答案 3 :(得分:0)
Cache-Control:public指定客户端和共享(代理)缓存可以缓存响应。
http://msdn.microsoft.com/en-us/library/system.web.httpcacheability(VS.71).aspx
此致 --Jocke