用于限制结果的API命名?

时间:2009-02-18 14:21:44

标签: api parameters naming

在我们的办公室,我们正在讨论如何在我们的公共API中命名一些参数。

我们向所有地方提供吸气剂,我们希望能够限制结果(分页)。

即:getPosts/getNews/getUsers/.../应该能够返回0到25,50到100等项目。 所以,我们需要两个参数。第一个参数是我们开始的地方,第二个参数是我们结束的地方。

那么,第二个参数应该是绝对的还是相对的? (50,75还应该退回50-75或50-125?)

我们已决定相对,所以第二个参数告诉我们要返回多少项。

棘手的部分是以清晰一致的方式命名。到目前为止我们提出的那些:

首先:

start/index/offset/page/pageindex

第二

amount/count/maxcount/limit/perpage/pagesize

每一个建议都有利有弊。使用“page”会让人不清楚它是从0还是1开始。在这方面使用“index”或“offset”会更清楚,但更具技术性(毕竟,用户在99%的分区中使用它进行分页时间)。

我想这是非常主观的,但我正在寻找明确的利弊,可能是良好的API及其使用的例子。

3 个答案:

答案 0 :(得分:3)

我会选择相对的,更容易掌握。

关于命名: 我喜欢第一个结果的“开始”和结果数量的“计数”。

(但是你不是以某种方式混合页面和结果计数?)

答案 1 :(得分:1)

绝对是亲戚。我称之为“索引”和“计数”。通常我会使用“长度”,但它似乎不适合你所描述的内容。如果你想使它类似于linq,你可以调用参数“skip”和“take”。对于将要查看结果URL的Joe Average人来说,这些术语也更容易接受。

答案 2 :(得分:1)

我会选择

getPosts(startIndex, count)