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