2010-10-28 158 views
9

我坐在阅读一些休息与我的队友,我们写是要揭露它的一些功能对世界其他地区的一个RoR应用程序。REST GET动词与参数

我对这个团队的任务是使公开日记报告的ressource。如果你打电话

http://root.com/journalreports

你应该得到所有从服务journalreports。这就像一个魅力,但我很困惑如何妥善制作暴露一系列journalreports的资源。我应该让

http://root.com/journalreports?range=1/2/2010;5/2/2010

或者,这是非法的,当我们谈论因为REST?范围=干扰?

什么是给人一种REST的ressource一些参数的最合适的方法是什么?

回答

14

参数是完全确定,特别是对搜索资源,比如在你的案例(查询一组期刊)。

recently answered

+0

感谢您的链接!这帮助我很多,因为链接http://labs.apache.org/webarch/uri/rfc/rfc3986.html#query – mslot 2010-10-28 16:56:39

+0

我接受了这个,因为链接帮助了我。 – mslot 2010-10-28 17:25:53

6

REST不会以任何方式使查询参数“非法”。这是一种架构风格,主要是通过交换表示来推动应用程序。 考虑URI的意思是不透明的,有http://example.com/page/1http://example/?page=1例如之间没有真正的区别,就REST而言(它最终取决于所发送的交涉,但选择或URI风格往往是一个实现细节) 。

重要的是客户如何去了解您的报告中的URI。 HTML可以很好地处理表单和查询参数。无论您的服务是用于浏览器消费还是其他代理,并不重要,您都可以使用相同的原则。如果你希望它更加灵活或者通过你的首页上的显式链接,你可以有HTML表单(或者如果你的客户端不是浏览器,那么它就是等价的)。 (您可能会发现它更容易的范围分成两个参数,如“从”和“到”,如果你想这是更有活力。)

+1

我却觉得这样做休息的时候,这样的“PHP风格”是非法的,类似的问题(路径与参数)。但是当我掠过一些文章时,也许我读了错误的东西? – mslot 2010-10-28 16:09:43

+1

@mslot是什么使查询字符串“PHP风格”?我认为应用程序实现的语言与应用程序如何解释和使用URI相互排斥。 – Todd 2015-11-25 17:26:22