通配符Compojure路由发出警告

时间:2019-01-05 11:13:19

标签: clojure compojure clout

以下路线如我所愿-即匹配/ pref /并将*绑定到路径的其余部分。

(GET "/pref/*" [*] (do (println *) (resp (str "Hello " *))))

但是有关于标准输出的投诉:

WARNING: * should not be used as a route binding.

影响力文档建议带*的通配符很好,而compojure文档则不解释在不引起警告的情况下应如何惯用地进行此操作,或者警告的原因是什么。我必须承认自己有某种不安的约束力,尽管我不确定为什么。

1 个答案:

答案 0 :(得分:1)

经过一番摸索,使用内联正则表达式功能来匹配所有内容似乎可以满足要求。仍然不确定警告的含义。

(GET "/pref/:path{.*}" [path] (do (println path) (resp (str "Hello " path))))