2017-12-18 94 views
0

我想在中間定義一個端點與參數。雀科:我怎麼能在中間定義端點與參數

GET( 「富」 ::參數( 「ID」):: 「咕」)

所以,我可以用下面的REST調用叫它:

類似的東西

http://mydomain/foo?id=99/goo

但是,出於某種原因,這是行不通的。

有什麼想法嗎?

謝謝, 伊蘭。

+2

它不起作用,因爲它不是一個有效的網址模式。 https://en.wikipedia.org/wiki/URL瞭解更多信息。 「?abc = 11&xyz = ijk」之類的''後面的東西被稱爲查詢參數,並且只能出現在URL的末尾。 –

回答

0

在您的get("foo" :: param("id") :: "goo")處理程序中,此"foo" :: param("id") :: "goo"稱爲route path

而這個param("id")實際上是path-parameter而不是query-parameter

標準URL方案看起來像以下,

scheme:[//[user[:password]@]host[:port]][/path][?query][#fragment] 

path-parameters其實不是標準URL scheme一部分,但使用正則表達式匹配現代HTTP URL框架的一部分path提取。

所以...你需要使用HTTP URL來訪問它 - http://mydomain/foo/99/goo