新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
网友回复
有没有不依赖embedding向量的RAG技术?
有没有支持实时打断语音通话并后台帮你执行任何的ai模型?
开源ai大模型文件格式GGUF、MLX、Safetensors、 ONNX 有什么区别?
出海挣钱支付收款PayPal、Wise 、PingPong、Stripe如何选择?
如何实现类似google的图片隐形水印添加和识别技术?
linux上如何运行任意windows程序?
ai能写出比黑客还厉害的零日漏洞等攻击工具攻击任意软件系统工程?
js如何获取浏览器的音频上下文指纹、Canvas指纹、WebGL渲染特征?
为啥ai开始抛弃markdown文本,重新偏好html文本了?
网站有没有办法鉴别访问请求是由ai操控chrome-devtools-mcp发出的?


