如何设置页面缓存或不用页面缓存_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > 如何设置页面缓存或不用页面缓存

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

 2014/4/27 23:26:47  jiangjun0817  博客园  我要评论(0)
  • 摘要:一、设置页面缓存1、直接在页面上用<%@OutputCacheDuration="10"VaryByParam="None"%>声明来缓存页面2、使用服务端方法://将Cache-Control标头设置为HttpCacheAbility值Response.Cache.SetCacheability(HttpCacheability.Public);//将页面的绝对过期时间Response.Cache.SetExpires(DateTime.Now.AddSeconds(20));3
  • 标签:缓存

一、设置页面缓存

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();

发表评论
用户名: 匿名