如何在注销后使缓存的ajax请求过时

时间:2018-04-19 13:44:11

标签: asp.net-mvc http-caching

我正在使用以下设置执行AJAX调用:

  headers: {
                'Cache-Control': 'max-age=30,private' 
            }

服务器响应是:

 Response.Cache.SetCacheability(HttpCacheability.Private);
            Response.Cache.SetMaxAge(TimeSpan.FromMinutes(0.5));

与我预期的一样,浏览器将响应存储30秒。

但是,退出后我想删除该缓存 - 我想清理缓存,以便在不久的将来支持不同的登录用户。

我不想在请求中添加特定于用户的密钥。 还有其他可能性吗?

1 个答案:

答案 0 :(得分:1)

在global.asax.cs中,Application_BeginRequest方法添加下面的代码

Response.AppendHeader("Cache-Control", "no-cache, no-store, must-revalidate");
Response.AppendHeader("Pragma", "no-cache");
Response.AppendHeader("Expires", "0");