shaojun

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

今天想优化下项目,试了下html5的appcache,发现还是有点坑的,最终暂时放弃了。下边说下这两个坑。

 

1. appcache除了会缓存列表里的文件外,还会缓存引用appcache的文件。比如index.php里引用appcache

 

<html manifest="demo.appcache"> 
</html>

 


index.php也会被缓存,如果index.php里有任何动态数据,这些数据将不会再更新。

 

如果要避开这个问题,那么首页的内容一定不能是动态内容,比如要将index.php改为index.html,然后用ajax去请求数据再做展示。这样需要对已经写好的程序做一些改造的工作。

 

2. appcache更新缓存是靠appcache文件里的注释里的版本号,如果版本号更新,浏览器会将所有的需要缓存的文件重新下载,这样一下会同时出现多个下载请求,这个有时候不符合预期。

 

通过以上两点,发现html5 有的标准还有待加强和发展,至少appcache这个特性并不是想象中那么好用的。如果需要使用,确保两点:

1. 首页不能是动态内容

2. 确保一定是不经常改动的资源,再写进appcache里,否则更新的成本比较大。

posted on 2014-11-17 21:13  shaojun  阅读(4174)  评论(0编辑  收藏  举报