StorageManager: persist() メソッド
Baseline
広く利用可能
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2021年12月以降、すべてのブラウザーで利用可能です。
安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。
persist() は StorageManager インターフェイスのメソッで、永続的ストレージ(persistent storage)を使用するパーミッションを要求します。 そして、パーミッションが付与されてボックスモードが永続的な場合は true に、そうでない場合は false に解決される Promise を返します。(詳細については、ブラウザーのストレージ割り当てと削除基準のガイドを参照してください。)
メモ:
このメソッドはウェブワーカーでは利用できませんが、StorageManager インターフェイスは自体利用可能です。
構文
js
persist()
引数
なし。
返値
例外
TypeError-
ローカルストレージのシェルフの取得に失敗した場合に発生します。例えば、現在のオリジンが不透明なオリジンである場合や、ユーザーがストレージを無効にしている場合などです。
例
js
if (navigator.storage && navigator.storage.persist) {
navigator.storage.persist().then((persistent) => {
if (persistent) {
console.log("明示的なユーザー操作以外では、ストレージは消去されません。");
} else {
console.log(
"ストレージは UA によってストレージの圧力により消去されるかもしれません。",
);
}
});
}
仕様書
| 仕様書 |
|---|
| Storage> # dom-storagemanager-persist> |