REST API - 按 ID 获取请求过滤器

REST API - GET Request filter by Ids

假设我有一个索引端点来列出单位 GET /projects/1/units/?id[]=1,2,3

ID 为 (1,2) 的单元属于 ID 为 (1) 的项目,但 ID 为 (3) 的单元不属于该项目

这种情况的正确响应应该是什么,请注意它是 GET 收集端点。

响应应为 200 可用单元列表或 400 错误请求,因为 id=3 的单元不属于该项目?

谢谢

REST 没有说明任何有关搜索或在一个 API 调用中检索多个内容的能力的信息。请记住,REST APIs 应该使用超媒体来指示它们的状态。这意味着您可以有一个 API 将特定项目的单位列为链接。

GET /projects/1/units

{
  'self': {...}
  'links': [
    {
      'rel': 'unit',
      'href': '/projects/1/unit/1',
      'type': 'project.unit'
    },
    {
      'rel': 'unit',
      'href': '/projects/1/unit/2',
      'type': 'project.unit'
    }
  ]
}

请注意,如果单元 3 不作为项目 1 的一部分存在,那么您应该返回 HTTP 状态 404。