【发布时间】:2012-02-29 03:47:53
【问题描述】:
我的网站有一个主页,我想为匿名用户缓存该页面,并为经过身份验证的用户将其设置为“私有”(因此他们将其保存在他们的计算机上,而不是其他任何地方)。
所以,如果用户是匿名用户,我想将页面保存在服务器缓存中,并使用Cache-control:public, max-age=60 和Vary:Cookie 保存在浏览器缓存中,因此如果浏览器通过身份验证并发送 cookie,浏览器将获胜'不要重复使用以前存储的页面。
如果用户通过身份验证,那么我不希望将页面存储在服务器中,但我会在客户浏览器上使用 Cache-control:private, max-age=60。
我一直在尝试使用 OutputCacheAttribute 和 Response.Cache 的几种组合,但我无法做到正确。
最好的方法是什么?
问候。
【问题讨论】:
标签: asp.net asp.net-mvc asp.net-mvc-3 caching outputcache