+
80
-

navigator.storage属于localstorage还是sessionstorage?

navigator.storage属于localstorage还是sessionstorage?用什么工具可以查看到?

网友回复

+
0
-

新navigator.storageAPI 在存储标准中定义,并在 Chrome 和 Firefox 中受支持。它使网络应用程序能够使用他们的网站存储包括(localStorage、IndexedDB 和 Service Worker 缓存)来持久化,如果用户的设备存储空间不足,它可以防止浏览器自动清除它。但是,如果用户手动清除他们的浏览数据,持久存储仍然会被清除。

如果系统在清除所有非持久性数据后仍处于存储压力下,则用户将需要手动清除任何剩余的持久性存储。

请求使站点存储持久化

网站可以通过调用该navigator.storage.persist方法请求使其(所有)站点存储持久化。
navigator.storage.persist().then((granted) => {
  if (granted) {
    // e.g., inform users that their data is available offline
  }
});

Chrome 会自动在参与度得分为1或已“添加到主屏幕”的网站上授予此权限;如果没有满足任何条件,请求将被自动拒绝。另一方面,Firefox 会提示用户:

Firefox 提示用户允许网站在持久存储中存储数据

您可以在chrome://site-engagement页面上查看您自己的不同网站的网站参与度分数。

获取站点存储使用情况和配额估计

该navigator.storage.estimate方法返回一个网站当前用于站点存储的空间的估计值,以及该网站总共有多少空间可用的保守估计值。例如,Web 应用程序可以使用此信息来确定缓存多少文件以供离线使用。
navigator.storage.estimate().then(({ usage, quota }) => {
  // usage = used storage space
  // quota = total available storage space
});

此 API 返回的数字大致对应于 Chrome DevTools 的应用程序面板中显示的信息: Chrome DevTools 中的应用程序面板显示站点的已用存储空间和总可用存储空间

如果网站的存储使用量超过其存储配额,QuotaExceededError则会抛出 a。请注意,“不透明响应”,即缺少正确 CORS 标头的跨域响应,最小大小为 7 MB(这是一种保护措施)。

翻译于:https://webplatform.news/issues/2018-11-07

我知道答案,我要回答