设计REST api以返回多个对象的计数

时间:2017-01-18 07:15:58

标签: rest api-design

我有一个问题,我应该如何设计我的休息api,因为我需要在我的应用程序中返回不同对象的数量。可以考虑多种方法

  1. 定义一个通常接受请求体(json)中的对象标识符的api,并返回响应中每个对象标识符的计数。缺点是api过于通用,可能不安宁,因为没有资源。该网址看起来像GET /计数

  2. 为需要计数的每个资源定义单独的api。假设我需要返回软件,表格,流程,任务,工作等中定义的字段的计数,我将为每个资源定义单独的api。它看起来像GET / field / count或GET / table / count。这样做的副作用是,我们需要计算的每个资源都会有很多web api。那不好吗?

  3. 请分享您对上述方法的看法,以及我可以设计符合REST标准的API的任何新方法。

    由于

1 个答案:

答案 0 :(得分:0)

这完全取决于使用API​​的客户端。

案例1 。如果它是一个需要在一个页面上计算多个表的WebApp,那么两者都将导致糟糕的设计,您将不得不为计数数据进行数百次调用。您可以在单个API中对俱乐部进行计数,并将其作为响应发送。

案例2 。如果客户端单独使用计数,那么我会推荐第二种方法,其中资源是明确定义的。对于第二种方法,您将使客户端智能化,这是不推荐的。

正如评论中所提到的,REST是一个完全主观的话题,因此每个设计都可以有多个观点。