我目前正在设计一个到现有基础架构的RESTful接口,并且正在努力解决一个特定方面。

我们有一组用户,可以通过/users访问
可以在/users/1等位置访问该集合的元素

但是,每个用户都有一个也需要访问的朋友列表。 users/1/friends是在这里打来的宁静电话吗?它不属于自己的集合,因为它仅与一个用户有关。

任何帮助将不胜感激

最佳答案

就RESTful设计而言,URI可以是您想要的任何内容。但是,为了确保可以在RESTful中访问您的界面,您确实需要执行以下操作:

<user>
    <name>Bob Smith</name>
    <link rel="friends" href="/peeps/1/amigos" />
</user>


通过添加额外的间接层,您的客户端可以发现朋友列表的链接,而对于客户端来说,该URI是什么不再重要。您可以随时更改它。

URI是服务器的实现细节,客户端绝对不能在它们上面耦合。唯一的耦合应该在相关性和媒体类型上。

关于rest - 正确的RESTful调用此资源,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4943572/

10-12 22:31