1. ホーム
  2. javascript

[解決済み] HTML5 Local Storageのフォールバックソリューション [終了しました]。

2022-09-01 02:07:15

質問

をシミュレートできるjavascriptのライブラリやコードを探しています。 localStorage をシミュレートできる javascript ライブラリおよびコードを探しています。

基本的に、私は自分のサイトを localStorage を使用してデータを格納し、それをネイティブにサポートしていないブラウザでも動作することを知っています。これは、ライブラリが window.localStorage が存在するかどうかを検出し、存在する場合はそれを使用します。存在しない場合は、ローカル ストレージのある種の代替方法を作成し、独自の実装を window.localStorage 名前空間内に独自の実装を作成します。

今のところ、このような解決策が見つかりました。

  1. シンプル セッションストレージ の実装です。
  2. ある実装 で、Cookieを使用する を使用する実装があります (このアイデアにはワクワクしません)。
  3. Dojoの dojox.storage を使用することができますが、それはそれ自身のものであり、実際にはフォールバックではありません。

Flash と Silverlight がローカル ストレージに使用できることは理解していますが、標準の HTML5 localStorage のフォールバックとしてそれらを使用することについては何も見つかっていません。おそらく Google Gears にもこの機能があるのではないでしょうか。

関連するライブラリ、リソース、またはコード スニペットを見つけた場合は共有してください! 私は純粋な javascript または jquery ベースのソリューションに特に興味がありますが、それはありそうにないと推測しています。

どのように解決するのですか?

私は パーシストJS ( githubリポジトリ ) を利用することで、クライアントサイドのストレージをシームレスかつ透過的にあなたのコードで処理することができます。 単一のAPIを使用し、以下のバックエンドのサポートを得ることができます。

  • flash: Flash 8 永続的ストレージ。
  • gears。Google Gears ベースの永続的ストレージ。
  • localstorage。HTML5ドラフトストレージ。
  • whatwg_db: HTML5 ドラフトデータベースストレージ。
  • globalstorage。HTML5 ドラフトストレージ(旧仕様)。
  • ie: Internet Explorer の userdata ビヘイビア。
  • cookie。Cookie による永続的な保存。

例えば、Cookie を使用したくない場合は、これらのいずれかを無効にすることができます。 このライブラリでは、IE 5.5+, Firefox 2.0+, Safari 3.1+, Chrome でクライアントサイド ストレージをネイティブにサポートし、ブラウザに Flash または Gears がある場合はプラグインによってサポートされます。 Cookie を有効にすると、すべてで動作します (ただし、4 kB に制限されます)。