2

.NET で構築された Web アプリケーションがあります。

セッション中、ユーザーはデータベースから取り込まれたディクショナリ値にアクセスする必要があります。ユーザーは頻繁に電話をかけます。

HTTP 呼び出しを削減し、辞書の値をクライアントに持ってきて、そこからアクセスしたいと考えています。

データの取得が非常に迅速になるように、この辞書の値をローカルに保存するためのベスト プラクティスは何かを理解したいと思いました。

私が実際にやろうとしているのは、FaceBook が "@" で行うことと似ているため、@Name を入力すると、データベース内ですばやく検索が行われ、テキストがリンクに置き換えられます。私の場合、検索するデータの固定セットがあり、通常は 10 ~ 15 個の名前と値のペアを超えません。

Cookie に値を保存することを検討しましたが、保存に制限があるかどうかはよくわかりません。また、取得がどれほど迅速になるかもわかりません。

どんな助けでも大歓迎です。

ありがとうございました

4

1 に答える 1

1

辞書が静的な場合は、 and を使用JSON.stringifylocalStorageて保存できます。このようにして、ユーザーは初めてサイトにアクセスしたときにのみロードする必要があります。localStorageJavaScript オブジェクトは JSON.parseハッシュ テーブルのように機能するため、.

次に、ページが読み込まれるたびに簡単なチェックを追加して、辞書を更新する必要があるかどうかを確認できます。

var globalDictionaryHash = null;

function loadDictionary()
{
  if (localStorage.getItem("my_dict") == null)
  {
    localStorage.setItem("my_dict", JSON.stringify(myObjectFromAJAXCall));
  }

  globalDictionaryHash = JSON.parse(localStorage.getItem("my_dict"));
  console.log(globalDictionaryHash['key']);
}
于 2012-04-24T16:58:33.123 に答える