Parameters RESTful:参数化数据请求的最佳URI实践?

Parameters RESTful:参数化数据请求的最佳URI实践?,parameters,rest,uri,Parameters,Rest,Uri,试图掌握RESTfusion中的最佳URI实践。。。 这么说吧 /service/user.xml返回包含所有用户数据的xml /service/user/1.xml返回包含用户id 1数据的xml 如果我只想获取用户的电子邮件地址,该怎么办 /service/user.xml?par=email或/service/user/email.xml是否适用于所有用户 /service/user/1.xml?par=email或/service/user/email/1.xml用于用户id 1

试图掌握RESTfusion中的最佳URI实践。。。 这么说吧

  • /service/user.xml返回包含所有用户数据的xml
  • /service/user/1.xml返回包含用户id 1数据的xml
如果我只想获取用户的电子邮件地址,该怎么办

  • /service/user.xml?par=email或/service/user/email.xml是否适用于所有用户
  • /service/user/1.xml?par=email或/service/user/email/1.xml用于用户id 1

关于/Jonas,在我看来,如果你认为它是不断缩小搜索范围,那么它是有意义的。您首先从大量“对象”开始,然后进行细化,变得越来越具体

事情是这样的:

服务->选择特定用户->指定该用户id->指定您需要从他们那里获得的信息->指定您需要的信息格式

service/user/:id/email.:format

或者,如果为可能微不足道的事情创建一个完整的路由没有意义,那么说
服务/user/:id:format?参数=:param
也不会错

我认为最终这些细节并不总是有“最佳方式”,而是有几种“推荐方式”,其中一种最适合你


你可能会觉得很有趣。

谢谢你,杰里科!缩小范围似乎是一条路要走!在我的例子中是/service/user/1/email.xml。伟大的我看到另一个答案被删除了。。我经常想知道这里的复数/单数。。我想听听关于这方面的一些意见,因为我很难过。因为Rails,我学会了RESTful设计,它们引导你走向
/users/
/users/1
,尽管我直觉上期望
/users/
/user/1
。实际上,在某个地方有一个选项可以选择
多条路线
。嗯,这是很有趣的东西。。。按照您的缩小方法,多个版本是合理的:/users/=所有用户,/users/1/=将所有用户缩小到用户id 1…同意。。我可能会在某个时候问一个新问题,以获得更多的意见。