【发布时间】:2017-05-16 22:15:34
【问题描述】:
我有资源集合users,每个用户可以有一个过滤器,所以另一个资源集合是filters。
所以,要检索过滤器,我们有这个 url
/users/:id/filters
url应该如何通过id检索过滤器?
- /users/:id/filters/:id
- /filters/:id
【问题讨论】:
标签: rest restful-architecture restful-url
我有资源集合users,每个用户可以有一个过滤器,所以另一个资源集合是filters。
所以,要检索过滤器,我们有这个 url
/users/:id/filters
url应该如何通过id检索过滤器?
【问题讨论】:
标签: rest restful-architecture restful-url
过滤器是一等实体还是归用户所有?例如,过滤器是否可以属于两个用户,或者换句话说,过滤器是创建后分配给一个或多个个人的吗? ?
如果过滤器是用户的属性(一个过滤器对应一个用户,一个用户对应一个或多个过滤器)/users/:id/filters/:id 很有意义。如果过滤器本身是与用户相关的不同对象(每个过滤器一个或多个用户),那么任何一个 API(甚至可能两者)都可能有意义,具体取决于用户预期如何使用 API。如果他们只关心过滤器,/filter/:id 是有意义的,如果他们只关心用户的过滤器 /users/:id/filters/:id 是合适的,或者如果他们的需求在两者之间有所不同,那么两者兼而有之是一个明智的解决方案。
【讨论】:
/users/:id/filters/:id 更有意义,因为查询是检索与特定用户对应的特定过滤器。
【讨论】:
/companies/{id} 和 /employees/{id})。 网址更短,更容易记住,不需要太多参数。
【讨论】: