Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala can';无法将路由与finatra控制器中的命名参数匹配_Scala_Finatra_Httprouter - Fatal编程技术网

Scala can';无法将路由与finatra控制器中的命名参数匹配

Scala can';无法将路由与finatra控制器中的命名参数匹配,scala,finatra,httprouter,Scala,Finatra,Httprouter,我正在使用com.twitter.finatra.http.Controller在Scala中设置端点,我有这样一个端点: get(s"${endpoint}/:id/lookup/?") {request: Request => println("here") val id = request.params("id") response.ok } 我的理解是,它应该匹配链接http://myservice/123/lookup和请求。参数(“id”)应返回“123”。但它永远不

我正在使用
com.twitter.finatra.http.Controller
在Scala中设置端点,我有这样一个端点:

get(s"${endpoint}/:id/lookup/?") {request: Request => 
 println("here")
 val id = request.params("id")
 response.ok
}
我的理解是,它应该匹配链接
http://myservice/123/lookup
请求。参数(“id”)
应返回“123”。但它永远不会到达println。但是当我尝试
http://myservice/:id/lookup
(完全一样)-确实如此。因此,它在地址中期望的是“:id”,而不是一个动态值。显然,
request.params(“id”)
不存在。如果我呼叫
http://myservice/:id/lookup?id=123
,则
请求。参数(“id”)
是来自查询字符串参数的
123

我做错了什么或误解了什么?我对Scala非常陌生,所以完全有可能整个事情都是按照预期的方式设置的