IndexedDB DB Datas To XML

时间:2014-03-24 12:19:38

标签: xml xml-parsing indexeddb

在我的项目中,我必须从我的IndexedDB数据创建一个XML文件。我将该XML文件传递给我的WebService,它将我的数据保存到我的服务器上。作为回报,我还想读取并解析我的WebService发送的XML文件(或数据)。所以给我一些建议.. < / p>

2 个答案:

答案 0 :(得分:1)

为什么不编写REST服务?这将使indexeddb更容易接口。在服务上,您可以将json数据解析为可以保存到数据库中的对象。

答案 1 :(得分:1)

IDB“对象存储”只能存储JavaScript对象。要将XML数据保存到IDB数据库,您需要将XML对象转换为JavaScript对象。该功能将取决于您的XML需求 - 没有一种通用的XML转换方法。

通常,follow the advice I laid out for you here将XML对象转换为JSON表示:

  

例如,如果您的SQL表看起来像这样:

+------+--------+--------+
|      | ColA   | ColB   |
+------+--------+--------+
| Row1 | CellA1 | CellB1 |
| Row2 | CellA2 | CellB2 |
| Row3 | CellA3 | CellB3 |
+------+--------+--------+
     

您的JavaScript对象可能如下所示:

var myObjectToStore = {
    'Row1': { 'ColA': 'CellA1', 'ColB': 'CellB1' },
    'Row2': { 'ColA': 'CellA2', 'ColB': 'CellB2' },
    'Row3': { 'ColA': 'CellA3', 'ColB': 'CellB3' }
};
     

该对象的JSON表示非常相似:

{
  "Row1": {
    "ColA": "CellA1",
    "ColB": "CellB1"
  },
  "Row2": {
    "ColA": "CellA2",
    "ColB": "CellB2"
  },
  "Row3": {
    "ColA": "CellA3",
    "ColB": "CellB3"
  }
}

如果没有这样的序列化,使用JavaScript对象要容易得多。我强烈建议通过网络而不是XML来探索使用JSON。

现代浏览器都支持JSON.parse()JSON.stringify,大多数网络服务器都可以处理application/json mimetype。