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

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: 小  |  中  |  大  |  超大  

一、设置页面缓存

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

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航