项目列表和项目列表之间的差异

Differences between lists of items and list of items

我正在考虑 API 像 .../lists/items?listId=1,2,3 这样的路径以获得如下响应。

// Map<Integer, List>
{
  1: [
    {
      "field": "item1"
    },
    {
      "field": "item11"
    }
  ],
  2: [
    {
      "field": "item2"
    },
    {
      "field": "item22"
    }
  ],
  3: [
    {
      "field": "item3"
    },
    {
      "field": "item33"
    }
  ]
}

// List<Object>
{
  [
    {
      "field": "item1"
    },
    {
      "field": "item11"
    },
    {
      "field": "item2"
    },
    {
      "field": "item22"
    },
    {
      "field": "item3"
    }
    {
      "field": "item33"
    },

  ]
}

但与此同时,我想到api路径可以用来表示获取后面的payload

// List<List<Object>>
{
  [
    {
      "field": "item1"
    },
    {
      "field": "item11"
    }
  ], 
  [
    {
      "field": "item2"
    },
    {
      "field": "item22"
    }
  ],
  [
    {
      "field": "item3"
    },
    {
      "field": "item33"
    }
  ]
}

以上三种情况写REST API路径有正确答案吗?如果没有,将不胜感激分享您的经验。谢谢

我会使用第一种方法。

  • 第二个是最糟糕的,因为你必须在客户端再次划分列表,这是没有用的。 JSON可以分开发
  • 可以使用第三个,但您必须重新创建连接 id/list,因为列表没有密钥。

map方法保持连接id/list并分离所有列表