2010-10-28 161 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