隨着(不建議使用,Chrome專有)navigator.webkitPersistentStorage.requestQuota()
方法我可以請求Chrome中的持久存儲。webkitPersistentStorage.requestQuota()適用於IndexedDB嗎?
這是否也適用於IndexedDB數據或僅適用於文件系統API?
背景:爲了保存重要的數據,我想讓IndexedDB真正具有持久性,避免任何瀏覽器垃圾收集/驅逐(除了手動用戶刪除)。
隨着(不建議使用,Chrome專有)navigator.webkitPersistentStorage.requestQuota()
方法我可以請求Chrome中的持久存儲。webkitPersistentStorage.requestQuota()適用於IndexedDB嗎?
這是否也適用於IndexedDB數據或僅適用於文件系統API?
背景:爲了保存重要的數據,我想讓IndexedDB真正具有持久性,避免任何瀏覽器垃圾收集/驅逐(除了手動用戶刪除)。
第
Chrome舊的PersistentStorage機制僅適用於FileSystem API。其目的是將其應用於所有存儲類型,但該提案失敗並且未被其他瀏覽器採用。 (就像文件系統API本身)
...
有在新的提議:https://storage.spec.whatwg.org/
...因此腳本可以調用navigator.storage.persist()
請求 「老大難」 的權限。如果被授予,它會使整個原始存儲(索引DB,高速緩存API,本地存儲等)持久化,即只能通過明確的用戶操作清除。 Chrome目前(大約在2016年8月)正在試驗這個建議 - 如果你想嘗試一下,請參閱:https://developers.google.com/web/updates/2016/06/persistent-storage?hl=en
是的,但AFAIK目前的新功能(Chrome 52)處於測試階段,通常不會*一般*可用(例如,一個免費的JS庫不能使用它)。那麼,目前沒有辦法安全地保存數據! –
正確。大多數瀏覽器都是如此;存儲是「盡力而爲」的,但是當空間緊張時,他們將驅逐數據(基於各種啓發式算法,例如最近最少使用的原點),而不是填充設備並開始失敗的操作。 –