RESTful资源:当资源在数据库中始终是单数时,复数与单数

时间:2015-07-20 19:44:35

标签: rest naming-conventions

如果我决定使用复数来表示我的所有路线名称,但有些资源只作为一个东西存在,你是保持单数(更直观)还是尊重使用复数的决定并保持这种方式? / p>

我们正在为PHP客户门户设计一个新的API,我们得到了类似的结果:

/ API /命令/或-a41931-0001 /特殊协议/

订单只能有一个特殊协议(并且没有其他类型的协议,所以我不能做/协议/?类型=特殊或类似的东西)。

如果订单必须只有一个,那么

典型地/特殊协议/是/特殊协议/使用吗?

1 个答案:

答案 0 :(得分:5)

更多基于意见的问题,但......

据我所知,有两种主要类型的资源:集合和实例。

集合将是"用户"。您可以访问/用户获取用户列表,或访问/ users / id以获取特定用户。特定用户通常是实例

在这种情况下,多个用户的原因是因为它是一个集合。如果没有进一步的可能性(访问集合的实例),使用/ user s 是没有意义的。

如果您正在访问自己的个人资料,那么您只有一个个人资料,因此您应该在/个人资料中访问它,而不是/个人资料(实例不是集合)

在您的情况下,只有一个协议,因此它不是集合,不需要协议ID来访问它,因此不应该是复数。