Asp.net禁用页面缓存的方法总结

2019-12-14,,

1、在Asp页面首部<head>加入 
复制代码 代码如下:
  Response.Buffer   =   True   
  Response.ExpiresAbsolute   =   Now()   -   1   
  Response.Expires   =   0   
  Response.CacheControl   =   "no-cache"   
  Response.AddHeader   "Pragma",   "No-Cache"

2、在HtML代码中加入 
复制代码 代码如下:
  <HEAD>   
  <META   HTTP-EQUIV="Pragma"   CONTENT="no-cache">   
  <META   HTTP-EQUIV="Cache-Control"   CONTENT="no-cache">   
  <META   HTTP-EQUIV="Expires"   CONTENT="0">   
  </HEAD> 

3、在重新调用原页面的时候在给页面传一个参数   Href="****.asp?random()"  
前两个方法据说有时会失效,而第三种则是在跳转时传一个随机的参数! 因为aspx的缓存是与参数相关的,如果参数不同就不会使用缓存,而会重新生成页面,每次都传一个随机的参数就可以避免使用缓存。这个仅适用于asp&asp.net


  
4、window.location.replace("WebForm1.aspx");  
参数就是你要覆盖的页面,replace的原理就是用当前页面替换掉replace参数指定的页面。  
这样可以防止用户点击back键。使用的是javascript脚本,举例如下:


a.html
复制代码 代码如下:
<html>
    <head>
        <title>a</title>     
        <script language="javascript">
            function jump(){
                window.location.replace("b.html");
            }
        </script>
    </head>
    <body>
       <a href="javascript:jump()">b</a>
   </body>
</html>

前3种只是清空了cache,即存储在Temporary Internet Files文件夹中的临时文件,而第4种则是使用跳转页面文件替换当前页面文件,并没有清空cache,也就是说Temporary Internet Files产生了相关的临时文件。

《Asp.net禁用页面缓存的方法总结.doc》

下载本文的Word格式文档,以方便收藏与打印。