gpt4 book ai didi

clojure - Compojure:可选的 URL 参数

转载 作者:行者123 更新时间:2023-12-03 13:58:31 25 4
gpt4 key购买 nike

我想像这样在 Compojure 中定义一个资源:

(ANY "myres/:id" [id] (handler))

并且我希望 :id 是可选的(取决于是否指定了 ID,我的 API 的行为会有所不同)。

如果我尝试访问,这可以正常工作
http://mydomain/myres/12

但是,如果我尝试访问
http://mydomain/myres

没有指定 ID,我得到 404。

有没有办法让参数 :id 是可选的?

谢谢!

最佳答案

如何创建 2 个不同的路由,一个带有 id,另一个没有它,并从两个路由中调用您的处理程序,如下所示:

(defn handler
([] "Response without id")
([id] (str "Response with id - " id)))

(defroutes my-routes
(ANY "myres" [] (handler))
(ANY "myres/:id" [id] (handler id)))

关于clojure - Compojure:可选的 URL 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15853103/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com