登出-如何清除缓存,asp.NET

本文关键字:缓存 asp NET 清除 何清除 登出 | 更新日期: 2023-09-27 18:06:50

我正在做一个asp。NET 4.0 Web应用程序与c#。我目前正在使用会话进行身份验证,在注销时我正在清除会话。但是有一个问题,当用户按回时,他仍然能够看到缓存的页面。我想禁用此类页面的缓存,或者确保对其进行检查。

做这件事的最好方法是什么?如果我将服务器设置为不存储缓存信息,这会影响所有应用程序还是只影响我的应用程序?

登出-如何清除缓存,asp.NET

添加到page_load

Response.Cache.SetCacheability(HttpCacheability.NoCache);

这是唯一正确的答案,但重要的是要知道,这只是一个请求停止缓存的浏览器-它不一定要遵循。

这需要包含在你不希望用户'返回按钮'到的每个页面。

您可以在母版页的Page_Init中添加以下行

protected void Page_Init(object sender, EventArgs e)
    {
        Response.Cache.SetExpires(DateTime.UtcNow.AddMinutes(-1));
        Response.Cache.SetCacheability(HttpCacheability.NoCache);
        Response.Cache.SetNoStore();
    }