by shigemk2

当面は技術的なことしか書かない

Webアプリケーションのローカルストレージについて

永続的なローカルストレージは、設定や実行時の状態など、
アプリケーションに特有のデータの保存や取り出しを行うため、
オペレーティングシステムによって抽象化されたレイヤが提供されているのが普通である。
これらのデータはレジストリ、INIファイル、XMLファイルなどに保存される。

歴史的にWebアプリケーションにはこのような贅沢は許されていなかった。
初期に考案されたCookieは、少量であれば永続的なローカルストレージとして
使うことも可能であったが、HTTPリクエストに含まれるという問題点があった。

これにより、

  • 必要のない同一のデータを何度も送信することになり、Webアプリケーションの速度を低下させる
  • データを保存せずにインターネット上で送信することになる
  • 4KBの制限がある

などのデメリットがある。
永続的なローカルストレージのためには、これらを全て克服する必要があった。

時代とともに、DHTMLやFlash Cookie、Gearなどで
ローカルストレージが実現されかけていく。

そして、HTML5で仕様の一部としてローカルストレージが実現する運びとなる。

HTML5のストレージは、
WebページがクライアントWebブラウザの中から、キーと値のペアに名前をつけて
ローカルに保存するための方法である。

Cookieと同様に、このデータはwebサイトを離れても保持されている。
だが、Cookieと違って、このデータはリモートのWebサーバへ送信されることなはい。
そして、Webブラウザでネイティブに実装されているので、
サードパーティのブラウザプラグインがなくても利用できるのだ。

入門 HTML5

入門 HTML5