html5 application cache遇到的严重问题


Posted in HTML / CSS onDecember 26, 2012

在我们的3G版网站的项目中使用了html5 application cache,将大部分图片资源、js、css等静态资源放在manifest文件中。

没想到上线第一天就遇到了严重问题:application cache会默认缓存当前页面!!!就算我们有如下设置:

复制代码
代码如下:

NETWORK:*

也就是说,对于所有的动态页面,application cache会缓存起来,用户怎么刷新都是老的!

而且手机浏览器还很难清除掉,也不支持js清除!

花了一个上午,尝试了很多办法,查了很多资料,都没能清除掉客户端的缓存。一上午被用户投诉惨了。

最后还是万能的stackoverflow救了我:

Do not use appcache unless it is REALLY 100% EXACTLY WHAT YOU WANT TO DO
Even if it IS 100% EXACTLY WHAT YOU WANT TO DO, *DO NOT* use appcache until you are 100% CERTAIN that you are not going to make a single change to that page (or any file that it links to) for a LONG time.
Delete the manifest file from the server -- if the browser can't find the manifest file, then it will clear its cache... ...this will also turn caching off for everyone.
Don't turn it on again until it's 100% CORRECT
Dealing with appcache is miserable, often.
解决办法很简单,在服务器端删除掉manifest文件,并且慎用application cache

当然,也有办法是用application cache,同时能绕过自动缓存当前页面的问题。那就是用iframe

HTML / CSS 相关文章推荐
不同浏览器对CSS3和HTML5的支持状况
Oct 31 HTML / CSS
基于css3实现漂亮便签样式
Mar 18 HTML / CSS
CSS3实现网站商品展示效果图
Jan 18 HTML / CSS
css3实现二维码扫描特效的示例
Oct 29 HTML / CSS
HTML5拖拽文件到浏览器并实现文件上传下载功能代码
Jun 06 HTML / CSS
HTML5中新标签和常用标签详解
Mar 07 HTML / CSS
详解HTML5中rel属性的prefetch预加载功能使用
May 06 HTML / CSS
HTML5 Canvas 实现圆形进度条并显示数字百分比效果示例
Aug 18 HTML / CSS
原生CSS实现文字无限轮播的通用方法
Mar 30 HTML / CSS
position:sticky 粘性定位的几种巧妙应用详解
Apr 24 HTML / CSS
HTML怎么设置下划线?html文字加下划线方法
Dec 06 HTML / CSS
box-shadow单边阴影的实现
May 21 HTML / CSS
html5 web本地存储将取代我们的cookie
Dec 26 #HTML / CSS
html5之Canvas路径绘图、坐标变换应用实例
Dec 26 #HTML / CSS
html5声频audio和视频video等新特性详细说明
Dec 26 #HTML / CSS
html5-Canvas可以在web中绘制各种图形
Dec 26 #HTML / CSS
在IE6系列等老式浏览器中使用HTML5的新标签实现方案
Dec 25 #HTML / CSS
HTML5引入的新数组TypedArray介绍
Dec 24 #HTML / CSS
突破canvas语法限制 让他支持链式语法
Dec 24 #HTML / CSS
You might like
php图片处理函数获取类型及扩展名实例
2014/11/19 PHP
Netbeans 8.2将支持PHP7 更精彩
2016/06/13 PHP
thinkphp隐藏index.php/home并允许访问其他模块的实现方法
2016/10/13 PHP
遍历指定目录,并存储目录内所有文件属性信息的php代码
2016/10/28 PHP
Codeigniter里的无刷新上传的实现代码
2019/04/14 PHP
用js判断页面刷新或关闭的方法(onbeforeunload与onunload事件)
2012/06/22 Javascript
引入autocomplete组件时JS报未结束字符串常量错误
2014/03/19 Javascript
捕获和分析JavaScript Error的方法
2014/03/25 Javascript
jQuery中get和post方法传值测试及注意事项
2014/08/08 Javascript
jQuery Ajax中的事件详细介绍
2015/04/16 Javascript
javascript实现在指定元素中垂直水平居中
2015/09/13 Javascript
js格式化输入框内金额、银行卡号
2016/02/01 Javascript
全面了解JavaScirpt 的垃圾(garbage collection)回收机制
2016/07/11 Javascript
js html css实现复选框全选与反选
2016/10/09 Javascript
JS禁止查看网页源代码的实现方法
2016/10/12 Javascript
jQuery学习笔记之入门
2016/12/14 Javascript
详解VueJs异步动态加载块
2017/03/09 Javascript
jQuery EasyUI结合zTree树形结构制作web页面
2017/09/01 jQuery
jQuery实现右侧抽屉式在线客服功能
2017/12/25 jQuery
JS中箭头函数与this的写法和理解
2021/01/14 Javascript
[02:08:58]2014 DOTA2国际邀请赛中国区预选赛 Ne VS CIS
2014/05/22 DOTA
[40:19]2018完美盛典CS.GO表演赛
2018/12/17 DOTA
[42:24]完美世界DOTA2联赛循环赛 LBZS vs DM BO2第一场 11.01
2020/11/02 DOTA
学习python的几条建议分享
2013/02/10 Python
实例讲解Python中浮点型的基本内容
2019/02/11 Python
django做form表单的数据验证过程详解
2019/07/26 Python
Python+pyftpdlib实现局域网文件互传
2020/08/24 Python
python装饰器代码深入讲解
2021/03/01 Python
css3实现背景图片拉伸效果像桌面壁纸一样
2013/08/19 HTML / CSS
CSS 3.0 结合video视频实现的创意开幕效果
2020/06/01 HTML / CSS
西班牙拥有最佳品牌的动物商店:Animalear.com
2018/01/05 全球购物
英国外籍人士的在线超市:British Corner Shop
2019/06/03 全球购物
作风转变年心得体会
2014/10/22 职场文书
运动会广播稿20字
2015/08/19 职场文书
利用前端HTML+CSS+JS开发简单的TODOLIST功能(记事本)
2021/04/13 Javascript
Nginx开源可视化配置工具NginxConfig使用教程
2022/06/21 Servers