StorageAccessHandle
StorageAccessHandle
接口表示通过调用 Document.requestStorageAccess()
授予的 未分区状态 的访问权限。
实例属性
StorageAccessHandle.sessionStorage
只读-
如果授予访问权限,则返回一个未分区的会话
Storage
对象。 StorageAccessHandle.localStorage
只读-
如果授予访问权限,则返回一个未分区的本地
Storage
对象。 StorageAccessHandle.indexedDB
只读-
如果授予访问权限,则返回一个未分区的
IDBFactory
对象。 StorageAccessHandle.locks
只读-
如果授予访问权限,则返回一个未分区的
LockManager
对象。 StorageAccessHandle.caches
只读-
如果授予访问权限,则返回一个未分区的
CacheStorage
对象。
实例方法
StorageAccessHandle.getDirectory()
-
返回一个
Promise
,如果授予访问权限,则该 Promise 将以一个未分区的FileSystemDirectoryHandle
对象作为结果完成,否则将被拒绝。 StorageAccessHandle.estimate()
-
返回一个
Promise
,如果授予访问权限,则该 Promise 将以一个未分区的StorageEstimate
对象作为结果完成,否则将被拒绝。 StorageAccessHandle.createObjectURL()
-
如果授予访问权限,则返回表示创建的未分区 Blob 存储 URL 的字符串,否则抛出错误。
StorageAccessHandle.revokeObjectURL()
-
如果授予访问权限,则撤销传入的未分区 Blob 存储 URL,否则抛出错误。
StorageAccessHandle.BroadcastChannel()
-
如果授予访问权限,则返回创建的未分区
BroadcastChannel
,否则抛出错误。 -
如果授予访问权限,则返回创建的未分区
SharedWorker
,否则抛出错误。
示例
js
document.requestStorageAccess({ localStorage: true }).then(
(handle) => {
console.log("localStorage access granted");
handle.localStorage.setItem("foo", "bar");
},
() => {
console.log("localStorage access denied");
},
);
注意:有关更完整的示例,请参阅 使用存储访问 API。
规范
规范 |
---|
将存储访问 API (SAA) 扩展到非 Cookie 存储 # storageaccesshandle |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。