REST API的复数形式更自然,更多使用,例如/api/users
或api/users/123
。混合REST API复数和单数为不同的资源?
但对于一些资源是不自然的。例如:
/api/login
- 登录确切一个用户/api/profile
- 获取登录的用户的个人资料
这个资源永远不会被用于更多在我的应用程序中的一个对象/模型。
另一方面,我读到混合复数和单数形式在资源名称是不好的做法(http://pages.apigee.com/web-api-design-ebook.html)。
所以我认为做什么:
- 使用奇异所有
- 使用多种对所有(有一些愚蠢的格式,如:
/api/logins
) - 是不一致的,并使用复数几乎所有资源的预期一些特殊资源,如
/api/login
或/api/profile
,它们总是与一个对象/模型一起使用。
什么是更好的方法?
我遵循与数据库表相同的规则:单数。这是产品表,而不是产品表。你得到一个产品或一套产品。没有必要用你的名词来处理变调;你得到一个实体或一组实体。 – 2016-09-07 00:51:32