angular と spring を使用してアプリケーションを作成しています。オフラインで作業できる必要があります。いくつかの調査を行った後、すべての .css および .js ファイルをキャッシュする必要があるため、アプリケーション キャッシュが最善の方法であることがわかりました。問題は、Spring によって返され、$resource オブジェクトによってキャッシュされるように要求されたデータを取得できないことです。サーバーの電源を切ると、静的データはキャッシュされますが、取得できない .json について、chrome のコンソールに「GET エラー」が表示されます。
angular.module('MonService', ['ngResource']).
factory('Projet', function($resource){
return $resource('json/accueil');
});
応答を .json ファイルに手動で保存し、このファイルもキャッシュして $resource のソースとして使用するなどの方法を試しましたが、長くて複雑に思えます...
または、次のような localstorage を使用します。
var cache, AmettreDansCache;
donne = {};
cache= window.localStorage.getItem('projets');
if (!cache) {
AmettreDansCache= $resource('json/accueil');
window.localStorage.setItem('projets', JSON.stringify(AmettreDansCache));
return AmettreDansCache
}
else{
return angular.extend(donne, JSON.parse(cache));
}
とにかく、アプリケーションキャッシュのみを使用してそれを行う方法は何ですか?