3

我见过有人说这是做 REST 的唯一方法:

/car

显示所有汽车

/car/123

显示关于 ID 为 123 的汽车的信息

我还看到其他人更喜欢使用 REST 执行此操作:

/car

显示所有汽车

/car?id=123

显示关于 ID 为 123 的汽车的信息

哪个对 REST 是正确的?

请注意,我发布这个问题只是为了得到一个真正的答案,我不是在拖钓。如果 REST 的定义不足以给出明确的答案,或者不清楚上面哪个选项对 REST 来说是“正确的”,那么这对我来说是一个很好的答案。我只是想了解 REST。

谢谢你。

4

1 回答 1

3

REST 最初是基于纯粹的路径驱动架构设计的,尽管 Flickr 和 JIRA 等软件中 REST API 的不同实现对此有些模糊。最后,最重要的是在您自己的整个 API 中使用的标准是一致的(即不要使用 /api/user/21 获取用户,然后 /api/group?id=3 获取另一个用户) . 理想情况下,使用路径来定位资源,然后使用不同的 HTTP 动词来确定您正在使用该资源做什么(获取它、发布一个新资源、发布一个更新等)。

维基百科有一篇内容丰富的文章。http://en.wikipedia.org/wiki/Representational_state_transfer

于 2012-08-13T16:10:07.907 回答