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.0新属性效果在ie下的解决方案
May 10 HTML / CSS
实例教程 纯CSS3打造非常炫的加载动画效果
Nov 05 HTML / CSS
纯CSS3制作的鼠标悬停时边框旋转
Jan 03 HTML / CSS
详解CSS3 rem(设置字体大小) 教程
Nov 21 HTML / CSS
css3实现冲击波效果的示例代码
Jan 11 HTML / CSS
Html5移动端获奖无缝滚动动画实现示例
Jun 25 HTML / CSS
使用jquery实现HTML5响应式导航菜单教程
Apr 02 HTML / CSS
2014年圣诞节倒计时网页的制作过程
Dec 05 HTML / CSS
用HTML5实现鼠标滚轮事件放大缩小图片的功能
Jun 25 HTML / CSS
HTML5中的音频和视频媒体播放元素小结
Jan 29 HTML / CSS
HTML5声音录制/播放功能的实现代码
May 03 HTML / CSS
使用HBuilder制作一个简单的HTML5网页
Jul 07 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支持中文字符串分割的函数
2015/05/28 PHP
如何使用微信公众平台开发模式实现多客服
2016/01/06 PHP
PHP中的表达式简述
2016/05/29 PHP
YII中Ueditor富文本编辑器文件和图片上传的配置图文教程
2017/03/15 PHP
PHP数组遍历的几种常见方式总结
2019/02/15 PHP
laravel利用中间件做防非法登录和权限控制示例
2019/10/21 PHP
jQuery 图像裁剪插件Jcrop的简单使用
2009/05/22 Javascript
js倒计时小程序
2013/11/05 Javascript
jQuery如何实现点击页面获得当前点击元素的id或其他信息
2014/01/09 Javascript
jquery ajax,ashx,json的用法总结
2014/02/12 Javascript
window.location.href IE下跳转失效的解决方法
2014/03/27 Javascript
将数字转换成大写的人民币表达式的js函数
2014/09/21 Javascript
JS显示下拉列表框内全部元素的方法
2015/03/31 Javascript
小巧强大的jquery layer弹窗弹层插件
2015/12/06 Javascript
JavaScript SweetAlert插件实现超酷消息警告框
2016/01/28 Javascript
深入理解vuex2.0 之 modules
2017/11/20 Javascript
nodejs微信开发之自动回复的实现
2019/03/17 NodeJs
Vue中computed和watch有哪些区别
2020/12/19 Vue.js
[01:17:12]职来职往完美电竞专场
2014/09/18 DOTA
python清除指定目录内所有文件中script的方法
2015/06/30 Python
基于python的Tkinter实现一个简易计算器
2015/12/31 Python
详解Python的Flask框架中生成SECRET_KEY密钥的方法
2016/06/07 Python
Python探索之ModelForm代码详解
2017/10/26 Python
Django model反向关联名称的方法
2018/12/15 Python
python图像处理入门(一)
2019/04/04 Python
Keras loss函数剖析
2020/07/06 Python
canvas裁剪clip()函数的具体使用
2018/03/01 HTML / CSS
阿根廷首家户外用品制造商和经销商:Montagne
2018/02/12 全球购物
什么是数组名
2012/05/10 面试题
大学生个人求职口试自我评价
2014/02/16 职场文书
婚礼主持结束词
2014/03/13 职场文书
元宵节晚会主持人串词
2014/03/25 职场文书
科技工作者先进事迹
2014/08/16 职场文书
个人剖析材料范文
2014/09/30 职场文书
教师工作能力自我评价
2015/03/04 职场文书
详解JVM系列之内存模型
2021/06/10 Javascript