我正在使用Google Sheets API来检索电子表格并对其进行解析。我正在使用 javascript 并且请求 JSON(REST API 的文档实际上在旧的Google Data API文档中 - 非常烦人!)。
这是我用于GET
数据的 URL,ID
电子表格的 ID 在哪里:
https://spreadsheets.google.com/feeds/cells/"+ID+"/1/public/values?alt=json
这将获取第一个工作表的每个单元格,但是,所有单元格都列在一个数组中。
feed: {
entry: [
0: {
gs$cell: {
row: 1,
col: 1,
$t: 'Value'
}
},
1: {
gs$cell: {
row: 2,
col: 1,
$t: 'Other Value'
}
}
]
}
这意味着我必须使用 for 循环遍历数组 ( data.feed.entry
),检查它使用的是哪一行data.feed.entry[i].gs$cell.row
,然后将每个单元格排序为每行的数组。这似乎需要大量额外的工作来格式化 JSON 对象以供使用。
我只是想知道为什么 Google 会像这样构建他们的 JSON 对象。他们为什么不按行对单元格进行分组呢?我觉得我错过了什么。
list
然后我认为使用而不是 获取整行可能会更好cells
,但是当我这样做时,列是由它们的值定义的,这意味着内容不能是动态的。在解析数据之前,您必须知道标头值...
feed: {
entry: [
0: {
gsx$MyColumnValue: {
row: 1,
col: 1,
$t: 'Value'
}
},
1: {
gsx$MyOtherColumnValue: {
row: 2,
col: 1,
$t: 'Other Value'
}
}
]
}
同样,我不知道为什么 Google 会以这种方式构建他们的 JSON。你知道为什么吗?我错过了什么?