2012.11
65
一种HTML5云文件系统
胡岘 易晓东 戴华东
国防科技大学计算机学院 湖南 410073
摘要:本文提出了一种HTML5云文件系统,使得HTML5应用能够像访问传统文件系统一样访问云存储。HTML5云文件系统充分利用了浏览器的HTML5特性,实现了云存储数据的本地缓存和离线操作,提高了云存储的访问效率。针对移动互联网的特点和多用户、多终端访问的需求,实现了身份认证、访问控制、数据同步等功能,为移动智能终端应用开发提供支撑。
关键词:HTML5;Web 应用;云文件系统;离线
0 引言
本文提出的HTML5云文件系统能够对HTML5应用访问云存储此提供良好支撑,HTML5应用通过调用云文件系统提供的API 能够方便快捷地实现与远程云服务器的数据上传、下载、管理等功能。此外,HTML5云文件系统还针对移动互联网连接不稳定、速度不稳定等状况进行了优化,利用HTML5本地存储等新特性,实现了用户数据的本地缓存、离线同步等功能,较大程度地改善了HTML5应用的用户体验。
1 HTML5简介
HTML5是未来移动互联网的核心平台,更是未来移动互联网时代的技术制高点,HTML5不仅仅用来表示Web 内容,更使得Web 进入了一个成熟的应用平台,视频、音频、图像、动画以及用户电脑的交互都被标准化。
1.1 HTML5应用
运用HTML5新特性开发的Web 应用,我们称之为HTML5应用。相比于传统的Web 应用,它具有更强的互动性与独立性。相比于传统本地原生应用,它具有统一标准和跨平台运行的特点。HTML5应用还具备即时更新的特点,传统应用更新需要重新下载安装,而HTML5应用更新很方便,就像更新网页,是马上的、即时的更新。
1.2 HTML5本地存储支持
为了满足对包含大段数据文件的存储和多种不同格式文件的保存。需要一个离线的文件管理系统来维护我们工
作,HTML5的FileSystem API 就充当这个角色。通过FileSystem API ,Web 应用程序可以阅读,浏览,编辑和操纵本地文件系统。FileSystem API 的主要功能有:
(1) 申请文件存储空间
需要申请一个文件存储空间来存储Web 应用所需要的数据,并获得FileSystem API 的可操作对象,使用window. requestFileSystem()方法可申请存储空间,方法中内置属性包含请求文件系统类型(TEMPORARY 或PERSISTENT 类型),文件系统大小(默认为1兆),成功回调函数,失败回调函数。
(2) 读取文件、操作文件
读取已经存在的文件,通过调用getFile()方法获得文件,包含三个参数,文件路径,成功回调函数,失败回调函数。读取文件后,调用remove()方法实现文件删除,调用copyTo()方法实现文件复制,调用moveTo()方法实现文件移动。
(3) 创建文件
getFile()方法提供一个内置属性可创建新文件,分别是create 和exclusive 。前者表示如果目标文件不存在,是否创建;后者表示如果目标文件已存在,是否抛出异常。
2 设计与实现
2.1 HTML5云文件系统的结构
HTML5云文件系统架构在本地存储与远程云存储之上,通过互联网络为不同设备之间的信息共享提供环境,使得用
户能够快捷地在不同设备之间、不同工作场所处理相同文