我試圖做出任何以下映射工作映射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需要一箇中間件來解析查詢字符串。順便問一下,我的問題依然存在。