html5学习应用程序缓存

<!--html5 mime-type setting -->
	<mime-mapping>
        <extension>manifest</extension>
        <mime-type>text/cache-manifest</mime-type>
    </mime-mapping>
<!--html5 mime-type setting -->

什么是应用程序缓存(Application Cache)? 

HTML5 引入了应用程序缓存,这意味着 web 应用可进行缓存,并可在没有因特网连接时进行访问。

应用程序缓存为应用带来三个优势:

·               离线浏览 - 用户可在应用离线时使用它们

·               速度 - 已缓存资源加载得更快

·               减少服务器负载 - 浏览器将只从服务器下载更新过或更改过的资源。

 

浏览器支持 
所有主流浏览器均支持应用程序缓存,除了 Internet Explorer。

 

CacheManifest 基础 
如需启用应用程序缓存,请在文档的 <html> 标签中包含 manifest 属性: 

Java代码  


manifest 文件的建议的文件扩展名是:".appcache"。 
请注意,manifest 文件需要配置正确的 MIME-type,即 "text/cache-manifest"。必须在 web 服务器上进行配置。 

Manifest 文件

manifest 文件是简单的文本文件,它告知浏览器被缓存的内容(以及不缓存的内容)。

manifest 文件可分为三个部分:

·               CACHE MANIFEST - 在此标题下列出的文件将在首次下载后进行缓存

·               NETWORK - 在此标题下列出的文件需要与服务器的连接,且不会被缓存

·               FALLBACK - 在此标题下列出的文件规定当页面无法访问时的回退页面(比如 404 页面)

更新缓存

一旦应用被缓存,它就会保持缓存直到发生下列情况:

·               用户清空浏览器缓存

·               manifest 文件被修改(参阅下面的提示)

·               由程序来更新应用缓存

日期和版本号修改,可以更新缓存。

 

操作流程:

1、web容器配置。Application Cache的核心是manifest 文件,要加载manifest 文件,就要先让web容易认识这个东东,所以要先配置MIME-type 映射。我用的是tomcat容器,找到conf/web.xml文件,在那一大堆<mime-mapping>后面加上manifest配置

Java代码  

CACHE MANIFEST
# 2012-11-01 v1.0.0 
../image/baidu_sylogo1.gif

NETWORK:
../image/cat.gif

FALLBACK:
404.html


,保存重启,完成第一步。 

 

2、编写manifest文件。我的manifest文件为cache/demo.appcache,内容入下: 

Java代码

<!DOCTYPE>
<html  manifest="../cache/demo.appcache">
  <head>
    <title>test4.html</title>
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="this is my page">
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div>
    	<img alt="aaa" src="../image/baidu_sylogo1.gif" >
    	<img id="msg" alt="bbb" src="" >
    	<script type="text/javascript">
    		var msg=document.getElementById("msg");
    		msg.src='../image/cat.gif';
    	</script>
    </div>
  </body>
</html>


10.  #注释:  第一个 URI 是资源,第二个是替补。

"#"开头的是注释行,日期和版本号修改,可以更新缓存。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值