HTML5本地存储初探(三)

作者:Robin 来源:Time Machine 时间:2010-03-07 15:49:00 

HTML5本地存储初探(二)

完成了数据的本地存储,就要将文件存储也搞定。为了实现文件的本地存储,html5搞了一个叫 manifest 的文件,这个文件就是一个缓存清单,把需要缓存在客户端的文件告诉浏览器。manifest是一个mimetype为 text/cache-manifest 的 纯文本文件。注意,这点很重要。

下面是一个manifest文件的例子:

NETWORK, CACHE, FALLBACK 都是可选的。

manifest文件必须以 CACHE MANIFEST 开头

其后需要下载并缓存的文件使用相对或绝对路径皆可,每个资源一行。

NETWORK段表明一些在线资源所在的域,所有这个域下的资源都不会被缓存,即使客户端处于离线状态,也会尝试去请求基于这些域的资源。

CACHE段还不是很明白

FALLBACK段下面每行都包含两部分内容,用空格分隔。后半部分是当前半部分路径不能访问时的备选路径(很拗),如上图就是,如果demoimages目录不能访问时,尝试访问images目录。

manifest文件介绍就到这里,下面创建我们自己的manifest文件:

我们只需要缓存两个文件即可,nbStyle.css 和 nbScript.js。还有index.html 本身,由于manifest文件会默认缓存引用自己的文件,所以index.html 不能在缓存列表中写出来:

CACHE MANIFEST# version: 2010-01-20 22:30nbStyle.cssnbScript.js

就是这么简单了,我们将他保存为 notebook.manifest 文件,并和其它文件一起放在根目录。

最后一个问题,如果将notebook.manifest的mimetype标识为 text/cache-manifest 类型呢?我知道有两种方法:

1. 在站点根目录建立 .htaccess 文件,在其中声明.manifest 的mimetype ,这个需要修改下服务器的配置文件,我没有尝试成功。

2. php环境在apache目录寻找一个为 “mime.types” 的配置文件,在其最后添加一行:

text/cache-manifest            manifest

然后在index.html文件引用它:

搞定了这些东西,你就可以尝试用webkit访问你的应用,然后离线,再尝试使用它,程序应该也可以照常运行。

至此,html5的离线存储基本介绍完了,下面附上打包的代码,代码本身没有什么难度,只是我写的太烂了:

远程下载:代码下载 

本站下载 jpQfw.offlineNote.zip (4.78 KB)

其实还远没有完,缓存下来的文件如果被更新了怎么办呢?如何通知客户端更新缓存其实也有api,慢慢的再探索吧。非常期待与大家探讨html5相关的问题。

标签:HTML5,本地存储,浏览器,webkit
0
投稿

猜你喜欢

  • PHP桥接模式Bridge Pattern的优点与实现过程

    2023-05-25 06:53:44
  • 配置SQL Server以允许远程连接

    2010-03-08 13:12:00
  • Web 标准设计实践:Google 的首页

    2008-10-12 12:14:00
  • 网页设计的十要十不要

    2007-12-21 13:01:00
  • ServerXMLHTTP的setTimeouts超时设置

    2010-01-02 20:38:00
  • form的submit方法和submit事件(onsubmit)

    2008-09-28 13:29:00
  • Variant总能找到与之相匹配的数据类型吗?

    2009-10-29 12:20:00
  • ASP读取日期单日期自动补零函数代码

    2011-02-20 10:39:00
  • 浅谈ACCESS数据库升迁SQLSERVER注意事项

    2007-08-11 13:44:00
  • 我们需要什么样的压力测试工具?

    2009-09-09 14:18:00
  • accept-charset与Header P3P

    2009-04-01 18:43:00
  • asp的系统变量ServerVariables (“HTTP_USER_AGENT“)问题

    2009-02-04 15:51:00
  • Oracle SecureFile的功能第1/4页

    2009-06-19 18:07:00
  • 网站重构到底是什么

    2008-11-03 11:30:00
  • DreamweaverMX2004的一句话技巧

    2009-05-22 18:23:00
  • document.createElement()用法及注意事项

    2008-04-21 15:16:00
  • Frontpage轻松下载网页或站点

    2007-10-22 13:14:00
  • js 操作cookie的教程

    2008-03-05 13:08:00
  • ASP缓存类 【先锋缓存类】Ver2004

    2009-01-05 12:28:00
  • 关于CSS学习——写给初学者

    2008-07-25 19:17:00
  • asp之家 网络编程 m.aspxhome.com