StorageManager: persist() 方法

Baseline 已廣泛支援

此功能已成熟,可在多種裝置和瀏覽器版本上使用。自 2021 年 12 月以來,它已在所有瀏覽器中可用。

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

StorageManager 介面的 persist() 方法請求使用永續性儲存的許可權,並返回一個 Promise。如果授予許可權且儲存桶模式為永續性,則該 Promise 解析為 true,否則解析為 false。瀏覽器可能會或可能不會遵守該請求,具體取決於瀏覽器特定的規則。(有關更多詳細資訊,請參閱儲存配額和逐出標準指南。)

注意: 儘管 StorageManager 介面可用,但此方法在 Web Workers 中不可用。

語法

js
persist()

引數

無。

返回值

一個 Promise,解析為 Boolean

異常

TypeError

如果獲取本地儲存空間失敗,則丟擲此異常。例如,如果當前來源是不透明來源,或者使用者已停用儲存。

示例

js
if (navigator.storage && navigator.storage.persist) {
  navigator.storage.persist().then((persistent) => {
    if (persistent) {
      console.log("Storage will not be cleared except by explicit user action");
    } else {
      console.log("Storage may be cleared by the UA under storage pressure.");
    }
  });
}

規範

規範
Storage
# dom-storagemanager-persist

瀏覽器相容性