我试图做出任何以下映射工作映射http://mysite.org/add?http://sitetoadd.com
或http://mysite.org/add?u=http://sitetoadd.com
的Compojure:如何映射查询参数
(GET "/add?:url" [url] url)
(GET "/add?u=:url" [url] url)
(GET "/add" {params :params} (params :u))
(GET "/add" {params :params} (params "u"))
(GET "/add" [u] u)
,但它只是失败,我不知道为什么。在另一方面,这个工程:
(GET "/add/:url" [url] url)
但我不能使用它,因为我必须要通过一个URL和http://mysite.org/add/http://sitetoadd.com
是无效的,而http://mysite.org/add?http://sitetoadd.com is
确定。
编辑:倾销request
我已经看到参数是空的。我认为它将包含POST 和 GET参数,但唯一可以找到我传递的参数的地方是:query-string(“u = asd”)。它seems需要一个中间件来解析查询字符串。顺便问一下,我的问题依然存在。