Storage manager
Storage API の StorageManager インターフェイスは、永続性のパーミッションの管理と、利用可能なストレージの見積もりのインターフェイスを提供します。navigator.storage か WorkerNavigator.storage のいずれかを使用して、このインターフェイスへの参照を取得できます。
対応ブラウザ
| 機能 | デスクトップ | モバイル | ||||
|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Safari | Chrome Android | Safari iOS | |
| 55 | 79 | 57 | 15.2 | 55 | 15.2 | |
| Navigator.storage は読み取り専用プロパティで、現在のサイトまたはアプリケーションでブラウザーのストレージ機能全体にアクセスするために使用される単一の StorageManager オブジェクトを返します。 返されたオブジェクトを使用すると、データストアの維持を調査および構成したり、ブラウザーがローカルストレージの利用に利用できるスペースのおおよその容量を確認したりすることができます。 | 55 | 79 | 57 | 15.2 | 55 | 15.2 |
permission_persistent-storage `persistent-storage` 権限 | 71 | 79 | 53 | | 71 | |
| estimate() は StorageManager インターフェイスのメソッドで、ストレージマネージャーに、現在のオリジンが使用しているストレージの大きさ (usage) と、利用可能な空間の量 (quota) を要求します。 | 61 | 79 | 57 | 17 | 61 | 17 |
| StorageManager インターフェイスの persist() メソッドは、永続的ストレージ(persistent storage)を使用するパーミッションを要求します。 そして、パーミッションが付与されてボックスモードが永続的な場合は true に、そうでない場合は false に解決される Promise を返します。 | 55 | 79 | 57 | 15.2 | 55 | 15.2 |
| StorageManager インターフェイスの persisted() メソッドは、サイトのストレージに対してボックスモードが永続的であれば true に解決される Promise を返します。 | 55 | 79 | 57 | 15.2 | 55 | 15.2 |
| WorkerNavigator.storage は読み取り専用のプロパティで、現在のサイトまたはアプリのブラウザーの全体的なストレージ機能にアクセスするために使用されるシングルトンの StorageManager オブジェクトを返します。 返されたオブジェクトにより、データストアの持続性を調べたり、設定したり、ブラウザーがローカルストレージを使用するために利用できる空間があとどのくらいあるのかをおおよそ知ることができます。 | 55 | 79 | 57 | 15.2 | 55 | 15.2 |
実務での使いどころ
-
Storage manager の活用
Storage API の StorageManager インターフェイスは、永続性のパーミッションの管理と、利用可能なストレージの見積もりのインターフェイスを提供します。
注意点
- 古いブラウザでは対応していない場合がある。
実装メモ
- 一部の API はセキュアコンテキスト (HTTPS) やユーザー操作起点を必要とする。利用前に要件を確認すること。