正确的REST URI语法

时间:2012-08-13 16:02:59

标签: rest

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

/car

显示所有汽车

/car/123

显示ID为123

的汽车信息

我也看到其他人喜欢用REST做这件事:

/car

显示所有汽车

/car?id=123

显示ID为123

的汽车信息

哪个适合REST?

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

谢谢。

1 个答案:

答案 0 :(得分:3)

REST最初是基于纯粹的路径驱动架构设计的,尽管像Flickr和JIRA这样的软件中的REST API的不同实现已经使这一点变得模糊不清。最后,最重要的是整个自己的API中使用的标准是一致的(即不要使用/ api / user / 21来获取用户,然后使用/ api / group?id = 3) 。理想情况下,使用路径来定位资源,然后使用不同的HTTP谓词来确定您正在使用该资源执行的操作(获取它,发布新资源,发布更新等)。

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