【发布时间】:2016-03-07 08:46:14
【问题描述】:
我正在尝试在 Haskell 中使用 Scotty,并且按照教程,我可以像这样路由一个 url:
get "/hello/:name" $ do
name <- param "name"
text ("Hello " <> name <> "!!")
但是,捕获多个路由参数的语法是什么?以下都不起作用:
post "/newuser/:id/:name" $ do
id <- param "id"
name <- param "name"
json $ User {userId = id, userName = name}
get "/users/{id}" $ do
id <- param "id"
json $ filter (matchesId id) allUsers
【问题讨论】:
-
你有什么错误?我看不出有什么不对。注意
id已经绑定到一个函数 -
没有错误,只是没有提供路线(好吧,我猜是错误 404)。你认为哪一个是正确的?
-
第一个应该可以工作。我不知道
{param}语法。也许其他地方有问题。你在尝试什么网址? -
在其他地方找到了括号语法。几个小时后我再试一次。网址例如是 localhost:1337/newuser/3/bob
-
您确定要发送
POST请求吗?您可以使用curl -i -XPOST http://localhost:1337/newuser/3/bob进行测试
标签: url haskell routing url-routing scotty