デフォルトでは、サーバーがファイル ヘッダーを設定する方法に応じて、ブラウザーは通常、応答をキャッシュします。それ以上の永続性が必要な場合は、ローカル ストレージと、場合によってはレガシー サポート用の Cookie を使用できます (ただし、ストレージに関しては非常に実際のサイズ制限があります)。
ローカル ストレージの使用は非常に簡単です。また、有効期限のタイムスタンプを使用して、キャッシュを更新する時期をクライアントに知らせることもできます。
ベアボーンの例:
var mydata = { foo: 'bar' };
var cache = {
data: mydata,
expires: new Date().getTime()
}
sessionStorage.setItem("cache", JSON.stringify(cache));
データを取得するには:
var cache = JSON.parse( sessionStorage.getItem("cache") );
if ( cache.expires + day < new Date().getTime() ) {
// get a fresh copy
} else {
var mydata = cache.data;
}
より高いレベルの API に慣れている場合は、代わりに使用できるローカル キャッシュの抽象化が多数あります。