如何强制浏览器转到服务器端而不是从浏览器缓存中获取数据

时间:2012-10-15 17:17:29

标签: asp.net firefox browser-cache

问题是firefox在点击后退按钮时显示“文件已过期”。有没有办法重新请求数据?

我在msdn上读到:如果你将NoCache或ServerAndNoCache传递给SetCacheability方法以阻止请求浏览器在其History文件夹中缓存页面,那么每当用户点击后退或前进按钮时,都会有新版本的响应将被要求。

    Response.Cache.SetCacheability(HttpCacheability.NoCache);

我不知道如何在代码隐藏中使用它,或者这会有用。?

3 个答案:

答案 0 :(得分:0)

如果你想为整个网站处理它,你应该可以在IIS中设置过期和缓存,但是在Page_Load上进行此操作可能在生命周期中为时已晚。

答案 1 :(得分:0)

如果您使用FF:

  • 打开新页面“about:config”
  • 查找参数network.http.use-cache
  • 切换它。

答案 2 :(得分:0)

<meta>文档的<head>部分中应用这些HTML代码。

<HTML>
<HEAD>
    <!-- no cache headers -->
    <meta http-equiv="Cache-Control" content=" no-store, no-cache, must-revalidate, pre-check=0, post-check=0, max-age=0">
    <meta http-equiv="Pragma" content="no-cache">
    <meta http-equiv="Expires" content="-1">
    <meta http-equiv="no-cache">
    <!-- end no cache headers -->
</HEAD>
<BODY>
    <!-- Body Here -->
</BODY>
</HTML>

参考:How to prevent caching in Internet Explorer