【发布时间】:2012-04-11 05:28:04
【问题描述】:
我目前正在编写一个提供对某些资源的访问的 Web 服务。我尝试遵循 REST,但我的 API 的某些部分遇到了问题。
我有以下 uri:
- /myservice/users/ :获取所有用户
- /myservice/users/{userId} :获取特定用户
- /myservice/badges/ :获取所有徽章
- /myservice/badges/{badgeId} :获取特定徽章
现在,我的问题是,我必须实施一种方法来获取所有拥有特定徽章的用户。 我可以认为这只是我在用户列表中应用的过滤器,因此是以下 uri:
- /myservice/users/?filter=badge:{badgeId}
或者我可以认为这只是徽章的子资源,因此以下 uri:
- /myservice/badges/{badgeId}/users/
哪一个看起来必须“符合 REST 标准”?
我必须说我已经阅读了一些关于这个主题的帖子,特别是这个:Rest Standard: Path parameters or Request parameters,但它们似乎没有涵盖我的问题。
【问题讨论】:
-
REST 对您的 URI 的外观没有意见。任何一个都与“REST 兼容”一样
-
仅供参考,我对您提到的问题进行了拍摄,您可能对answer 感兴趣。
标签: rest