码迷,mamicode.com
首页 > 其他好文 > 详细

如何设置页面缓存或不用页面缓存

时间:2014-04-27 23:02:18      阅读:456      评论:0      收藏:0      [点我收藏+]

标签:http   code   style   strong   set   margin   date   request   res   return   odi   

一、设置页面缓存

1、直接在页面上用<%@ OutputCache Duration="10" VaryByParam="None" %>声明来缓存页面

2、使用服务端方法:

//将Cache-Control标头设置为HttpCacheAbility值

Response.Cache.SetCacheability(HttpCacheability.Public);

//将页面的绝对过期时间

Response.Cache.SetExpires(DateTime.Now.AddSeconds(20));

3、对用户的请求以304响应 

DateTime dt;

//从http请求头获取If-Modified-Since值,判断该值与当前的差值是否超出要缓存的时间,如果超出则重新加载页面,否则以304响应
DateTime.TryParse(Request.Headers["If-Modified-Since"], out dt);
if ((DateTime.Now - dt).TotalSeconds < 30.0) {
Response.StatusCode = 304;
Response.End();
return;
}

//第一次加载的时候要设置Last-Modified为当前时间,下次再次请求当前页的时候会将该值以If-Modified-Since发送到服务端
Response.Cache.SetLastModified(DateTime.Now);

二、不用页面缓存

1、如果是静态的css或js文件则可以在文件后加上参数?t=234

2、服务端则可以使用:

  //设置http标头的Cache-Control:no-store

  Response.Cache.SetNoStore();

如何设置页面缓存或不用页面缓存,布布扣,bubuko.com

如何设置页面缓存或不用页面缓存

标签:http   code   style   strong   set   margin   date   request   res   return   odi   

原文地址:http://www.cnblogs.com/jiangjun0817/p/3695252.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!