zoukankan      html  css  js  c++  java
  • 禁止缓存方法

    1、在我找到的许多方案中,其中有一种建议禁止页面缓存。具体是使用服务器端脚本,如下所示: 
    <%
    Response.Buffer = true;
    Response.ExpiresAbsolute = DateTime.Now - new TimeSpan(1, 0, 0);
    Response.Expires = 0;
    Response.CacheControl = "no-cache";
    %> 
        这种方法非常有效!它强制浏览器重新访问服务器下载页面,而不是从缓存读取页面。使用这种方法时,编程者的主要任务是创建一个会话级的变量,通过这个变量确定用户是否仍旧可以查看那个不适合通过后退按钮访问的页面。由于浏览器不再缓存这个页面,当用户点击后退按钮时浏览器将重新下载该页面,此时程序就可以检查那个会话变量,看看是否应该允许用户打开这个页面。


    2、在<head></head>中加入
    <meta http-equiv="pragma" content="no-cache">

    另一位网友这样说:

    在<head></head>中插入
    <meta http-equiv="Pragma" content="no-cache">
    <meta http-equiv="Cache-Control" content="no-store, no-cache, max-age=0, must-revalidate">


    3、后台添加
     Response.Cache.SetNoStore();
     你的代码加到Page_Load就可以


    4、代码
     Response.ExpiresAbsolute = DateTime.Now - new TimeSpan(1, 0, 0);
     你的代码加到Page_Load就可以

    5。

    如何禁止浏览器缓存某一页面?

    光使用<META HTTP-EQUIV="Pragma" CONTENT="no-cache">是不起作用的,IE仍然会cache数据的。
    这是因为ie在一页的数据没有满32K时它是不会缓存的。
    通常,这样的话,如果把no-cache直接放在最前面的话,只要缓存
    中的数据没有到32K,当时ie是不会缓存的,但是当读过了no-cache标志,
    到了HTML其他部分时,数据已经超过了32K这时,IE仍然会将数据缓存起来。
    这是由于IE分析一个页面的语法时是从上到下读取的,正确的方法如下:
    <HTML>
    <HEAD>
    <META HTTP-EQUIV="REFRESH" CONTENT="5">
    <TITLE> 你的标题 </TITLE>
    </HEAD>
    <BODY>
    你的页面的其它部分。。。。。
    </BODY>
    <HEAD>
    <META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
    </HEAD>
    </HTML>。

  • 相关阅读:
    System.ServiceModel.CommunicationException:The underlying connection was closed: The connection was closed unexpectedly
    研究jBPM和NetBPM
    研究:Microsoft Solution Framework
    iOS银联,支付宝,微信,ping++开发文档
    Xampp+Openfire+Spark的简单使用
    ObjectiveC与Swift混编
    网络抓包教程
    iOS版微信开发小结(微信支付,APP跳转微信公众号)
    七牛上传图片问题总结
    2012年之总结
  • 原文地址:https://www.cnblogs.com/zhuor/p/366782.html
Copyright © 2011-2022 走看看