请问Safari的7天未交互数据驱逐政策是否适用于OPFS?
Safari中OPFS的存储驱逐规则说明
问题背景
Safari有一项针对未使用源的7天数据清理政策:若源在7天内无用户交互(如点击、触控),其下的IndexedDB、Service Worker注册、Cache API等存储数据会被自动删除。但OPFS作为File System API的新特性,是否受该政策约束并不明确,以下是结合存储规范和Safari行为的明确解答:
解答
OPFS数据是否会因7天无用户交互被删除?
会。OPFS属于源私有脚本可写存储范畴,与IndexedDB、Cache API等机制一致,被纳入Safari的7天自动清理规则中。根据Safari的存储管理逻辑,只要源超过7天没有用户主动交互,该源下所有可写存储(包括OPFS)都会被清理,仅服务器设置的Cookie可豁免。OPFS是否存在例外,比如通过
navigator.storage.persist()申请持久化?
存在例外。当源通过navigator.storage.persist()向用户申请持久化存储并获得许可后,该源下的所有存储数据(包含OPFS)会被标记为持久化,不会因7天无交互被自动删除,仅当用户手动清除浏览器数据时才会被移除。Safari新版本是否调整了OPFS的相关政策?
截至目前,Safari最新版本(如17.x系列)未针对OPFS单独修改驱逐政策,仍遵循统一的源存储清理规则。OPFS作为标准化的File System API特性,被整合进现有存储管理框架,未获得特殊处理。
内容的提问来源于stack exchange,提问作者hyperknot
相关产品推荐
相关产品推荐

