Web Storage

概要

Web Storageとは、Webサーバ側からの制御によりWebブラウザなどのWebクライアントにデータを保存する仕組み。サーバとクライアントの間の通信手順(プロトコル)の仕様も含む。

Webサーバがブラウザ側にデータを保管する技術としては従来からHTTP Cookieクッキー)があるが、Web StorageはCookieよりも最大容量が大きく、HTTPヘッダで直に値をやり取りしないという違いがある。

Web Storageでは、データを永続的に保管する「localStorage」(ローカルストレージ)と、サーバとクライアントの間の連続したやり取り(セッション)の間だけ一時的にデータを保管する「sessionStorage」(セッションストレージ)に分かれている。ブラウザの実装によるが、いずれもサーバあたり5~10MB程度の容量があり、4KBまでのCookieから大幅に拡張されている。

Cookieと同じように、あるサーバから受け取ったデータを他のサーバへ送信することはできないよう制限が課されている。「同一生成元ポリシー」に基づいて、同一のURIスキーム(httpやhttps)、同一のホスト名(ドメイン名まで省略せず記したFQDN)、同一のポート番号の組み合わせのみを同一の送信元とみなす。

Cookieはすべてのファイルの送受信のたびに自動的にHTTPリクエストやHTTPレスポンスのヘッダ領域に付加されて送受信されたが、Web Storageではクライアント側が受信したページに記述されたJavaScriptなどのスクリプトによって送受信が制御される。クライアント側が必要なタイミングで値の取得や送信が可能である。

データは一対のキー(key)と値(value)をセットにして連想配列KVSKey-Valueストアとも呼ばれる)に保管される。ストレージに値を書き込むときは標識となるキーを指定し、後からその値が必要なときはそのキーを指定すれば取り出すことができる。キーには文字列を指定するが、値として保存できるのはJavaScriptが扱うデータなら文字列、数値、配列オブジェクトなど何でもよい。

(2021.11.19更新)

他の辞典による解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。