做过返回页面定位的功能,因为带分页,所以用了缓存sessionStorage,请见博客,然后顺便又了解了其他的缓存机制。
一、消除缓存
//方法一 修改请求header头,比如php添加:
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
//方法二 修改html的head块:
<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
<META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT">
<META HTTP-EQUIV="expires" CONTENT="0">
//方法三:添加随机参数:
//对于图片或者css,可使用如下方式:
<img src="./data/avatar_mingpian_bak.jpg?rand=h9xqeI" width="156" height="98">
//对于js则可以直接使用时间戳:
<script language="javascript" src="UILib/Common/Common.js?time=new Date()">
二、应用缓存
除了http协议缓存,HTML5 提供一种应用程序缓存机制,使得基于web的应用程序可以离线运行。为了能够让用户在离线状态下继续访问 Web 应用,开发者需要提供一个 cache manifest 文件。
可以参考这篇文章
H5的离线缓存技术