我正在使用角度和弹簧编写应用程序。它必须能够离线工作。在做了一些研究之后,我发现应用程序缓存是最好的方法,因为我需要缓存所有 .css 和 .js 文件。问题是我无法获取 spring 返回并由 $resource 对象要求缓存的数据。当我关闭服务器时,静态数据被缓存,但我在 chrome 的控制台中收到关于他无法检索的 .json 的“GET 错误”。
angular.module('MonService', ['ngResource']).
factory('Projet', function($resource){
return $resource('json/accueil');
});
我尝试过一些方法,例如手动将响应保存在 .json 文件中,然后缓存该文件并将其用作 $resource 的源,但它似乎又长又复杂......
或使用本地存储,例如:
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));
}
我认为这不起作用,无论如何仅使用应用程序缓存的方法是什么?