Javascript 在离线cordova应用程序中存储rest api中json对象的最佳方法

Javascript 在离线cordova应用程序中存储rest api中json对象的最佳方法,javascript,json,angularjs,cordova,local-storage,Javascript,Json,Angularjs,Cordova,Local Storage,我正在为Android和iOS构建一个用Cordova包装的AngularJS应用程序。 我所有的数据都来自RESTAPI 我有类似于my.api/groups/1/items的URL来获取项目列表 [ { id: 5, type: "foo", title: "Item 5", group: 1, body: "<p>Some content</p> ", img:

我正在为Android和iOS构建一个用Cordova包装的AngularJS应用程序。 我所有的数据都来自RESTAPI

我有类似于
my.api/groups/1/items
的URL来获取项目列表

 [
    {
        id: 5,
        type: "foo",
        title: "Item 5",
        group: 1,
        body: "<p>Some content</p> ",
        img: "http://my.website/images/item5.jpg"
    },
    {
        id: 6,
        ...
    }
]
我用restanglar检索数据,它工作得很好

Restangular.one('group', id).getList('items').then(function(data){
  $scope.items = data;
});
现在,我希望数据可以脱机使用并随时刷新。 本地存储是不可能的,因为我将有+5MB的数据和图像

  • 我看到很多关于文件API的帖子,但这是否意味着我需要为每一项都设置一个文件? 例如:item1.json、item2.json和一个用于list items.json的文件 我认为有一个比拥有500多个不同文件更好的解决方案

  • 如何处理图像?我是否需要解析api、下载图像并替换为本地链接


    • 为什么不使用WebSQL?作为一种网络标准,它已经过时了,但它在手机上运行良好,在PhoneGap/Cordova上运行良好。至于图像,我可能会将它们作为二进制文件存储在文件系统中

      Restangular.one('group', id).getList('items').then(function(data){
        $scope.items = data;
      });