Compojure路线中的逗号

Tom*_*oli 4 clojure compojure ring

我正在尝试创建一个具有参数的路由,该参数在compojure中包含逗号

(GET "/tags/multiple/:tag-names" [tag-names] multiple-tags)
Run Code Online (Sandbox Code Playgroud)

但出于某种原因,每当我在:tag-names字段中包含一个逗号时,它就是404s.没有逗号时它可以正常工作.

有谁知道是什么原因造成的,以及我如何解决这个问题?

mty*_*aka 5

Compojure clout用于路由.来自cloutREADME:

Clout支持关键字和通配符.关键字(例如:title)将匹配任何字符,但以下内容:/ . , ; ?.

默认情况下,clout将逗号视为路径段分隔符.您可以通过将自定义正则表达式传递给路径来解决此问题.以下将:tag-names匹配任何字符,除了/:

(GET ["/tags/multiple/:tag-names" :tag-names #"[^/]+"] [tag-names] multiple-tags)
Run Code Online (Sandbox Code Playgroud)