LocalFileSystemSync - 可以用于同步访问沙盒文件系统
非标准
该功能是非标准的。请尽量不要在生产环境中使用它:因为每个用户不一定会正常运行。它的实现可能存在很大的不兼容性,并且将来可能会改变行为。
LocalFileSystemSync
是文件系统 API 的接口,可以用于访问沙盒文件系统。它旨在与 WebWorkers一起使用。这些方法由 worker 对象实现。
关于这份文档
本文档最后更新于 2012 年 3 月 2 日,并遵循 2011 年 4 月 19 日起草的 W3C 规范(工作草案)。
该规范或多或少被放弃,未能获得显着的关注。
基本概念
您可以通过从 Web worker 中请求 LocalFileSystemSync
对象来请求访问沙盒文件系统。 window
对象的 LocalFileSystemSync
和 requestFileSystemSync()
方法中的全局方法暴露给 Worker 的全局范围。调用resolveLocalFileSystemSyncURL()
为您的 Web 应用程序创建新存储。
window
对象中,requestFileSystemSync()
和 resolveLocalFileSystemSyncURL()
方法中的全局方法暴露给 Worker 的全局范围。调用 window.requestFileSystemSync()
可以为您的 Web 应用程序创建新存储。
The global methods in the window
object requestFileSystemSync()
and resolveLocalFileSystemSyncURL()
methods are exposed to the Worker's global scope.
有关更多概念,请参阅对应的异步 API 文章。
实例
// 处理特定于浏览器的前缀
window.requestFileSystemSync = window.requestFileSystemSync || window.webkitRequestFileSystemSync;
// 第一个参数定义存储类型:持久性或临时性
// 接下来,设置所需空间的大小(以字节为单位)
var fs = requestFileSystemSync(TEMPORARY, 1024*1024 /*1MB*/);
因为您使用的是同步 API,所以不需要成功和错误回调。
方法预览
FileSystemSync requestFileSystemSync (in unsigned short type, in long long size) raises FileException;
EntrySync resolveLocalFileSystemSyncURL (in DOMString url) raises FileException;
常量
常量 | 值 | 描述 |
---|---|---|
TEMPORARY |
0 |
可由浏览器自行决定删除的瞬态存储。 |
PERSISTENT |
1 |
除非用户或应用程序将其清除,否则将保留在浏览器中的存储。在应用程序使用此类存储之前,用户必须授予权限。 |
方法
requestFileSystemSync()
请求应存储数据的文件系统。您可以通过使用此全局方法 window.requestFileSystemSync()
请求 LocalFileSystemSync
对象来访问沙盒文件系统。
FileSystemSync requestFileSystemSync(
in unsigned short type,
in unsigned long long size
);
参数
type
文件系统的存储类型。值可以是 TEMPORARY
或 PERSISTENT
。
size
应用程序所需的存储空间(以字节为单位)。
返回
FileSystemSync
表示文件系统的对象。
异常
此方法可以使用以下代码引发 FileError:
异常 | 描述 |
---|---|
SECURITY_ERROR |
应用程序无权访问文件系统接口。例如,您无法从 file:// 运行。有关更多详细信息,请参阅基本概念文章。 |
resolveLocalFileSystemSyncURL()
允许用户查找本地 URL 引用的文件或目录的 Entry
。
void resolveLocalFileSystemURL(
in DOMString url
);
参数
url
文件系统中本地文件的 URL。
返回
EntrySync
表示文件系统中的条目的对象。
异常
此方法可以使用以下代码引发 FileError:
异常 | 描述 |
---|---|
ENCODING_ERR |
URL 的语法无效。 |
NOT_FOUND_ERR |
URL 在结构上是正确的,但是指的是不存在的资源。 |
SECURITY_ERR |
应用程序无权访问文件系统接口。 |
桌面浏览器兼容性
特性 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
基础支持 | 13 webkit | 未知 | 不支持 | 不支持 | 不支持 | 不支持 |
requestFileSystemSync | 13 | 未知 | 不支持 | 不支持 | 不支持 | 不支持 |
resolveLocalFileSystemSyncURL | 13 | 未知 | 不支持 | 不支持 | 不支持 | 不支持 |
移动浏览器兼容性
特性 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
基础支持 | 支持 webkit | 支持 webkit | 未知 | 不支持 | 未知 | 不支持 | 不支持 |
requestFileSystemSync | 支持 | 支持 | 未知 | 不支持 | 未知 | 不支持 | 不支持 |
resolveLocalFileSystemSyncURL | 支持 | 支持 | 未知 | 不支持 | 未知 | 不支持 | 不支持 |
相关链接
规范:文件 API:目录和系统规范WD
参考:文件系统 API