ASP.NET中缓存(cache)的控制方法

在开发Web 应用程序的时候,如果不想让客户端缓存 (cache)服务器上的网页,需要在ASP.NET文件的Page_Load中写:Response.Cache.SetCacheability(HttpCacheability.NoCache);

   本人在调式代码的时候无意中发现一些有趣的东西:

      按HTTP 1.0的标准,我们可以在html网页上直接使用 <meta http-equiv="pragma" content="no-cache" /> 

      按HTTP 1.1的标准,我们可以用<meta http-equiv="Cache-Control" content="no-cache" />

    ASP.NET防止客户端缓存服务器上页面的方案
 
   1、在调试的过程中,在aspx页面上面的两个都给用上了,当打印Response 的Http Header的时候居然发现:
         Cache-Control:Private.
   
     本人了解ASP.NET没有办法通过程序来给Response 写入pragma 这个Http Header,这是为什么?

    2、只在aspx页中保留<meta http-equiv="pragma" content="no-cache" />,
          
同时,在程序中写上
Response.Cache.SetCacheability(HttpCacheability.NoCache);

    
打印出Response 的Http Header 结果如下:
               Pragma: No-Cache
               Cache-Control: No-Cache

 

   所有 只有用方案2 才能真正 防止客户端缓存

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值