0

我正在使用预先指定的 API 定义,我需要遵守:

"myTable": {
    "split": [
        {
            "total": 0,
            "perItem": [
                0,
                0,
                0
            ]
        }
    ]

我的函数的结果是一个列表(因为我使用的是应用):

Export
[[1]]
[[1]]$total
[1] 13

[[1]]$perItem
1 2 3 
5 7 0 

但是当我将其转换为 .json 时,它的格式与预定义的 API 定义不同:

toJSON(Export)
[{"total":[13],"perPlan":[5,7,0]}] 

我想知道如何将应用的输出转换为具有预定义的 API?

我尝试将其转换为数组:

toJSON(array(Export), simplify = TRUE)
[{"total":[13],"perPlan":[5,7,0]}] 

但这仍然有额外[]的内容。

4

1 回答 1

0

根据 API 规范,您的输入还应该将您的数据“嵌入”到这个拆分和 mytable 列表中,这可以通过以下方式完成:

Export <- list(list(total = 13,
                    perItem = c(5, 7, 0)))

for_JSON <- list(mytable = list(split = Export))

toJSON(for_JSON, simplify = TRUE, pretty = TRUE)

这使:

{
  "mytable": {
    "split": [
      {
        "total": 13,
        "perItem": [5, 7, 0]
      }
    ]
  }
} 

这看起来像 API 想要的。

于 2021-10-04T13:29:47.350 回答