mirror of
https://github.com/metosin/reitit.git
synced 2025-12-29 04:38:26 +00:00
More docs
This commit is contained in:
parent
653743a25f
commit
82e300a9aa
2 changed files with 33 additions and 10 deletions
|
|
@ -60,17 +60,29 @@
|
|||
(defn compile-result [[path data] opts]
|
||||
(let [[top childs] (group-keys data)]
|
||||
(if-not (seq childs)
|
||||
(let [middleware (middleware/compile-result [path top] opts)]
|
||||
(map->Methods {:any (middleware/compile-result [path top] opts)}))
|
||||
(let [any-handler (if (:handler top) (middleware/compile-result [path data] opts))]
|
||||
(reduce-kv
|
||||
(fn [acc method data]
|
||||
(let [data (meta-merge top data)]
|
||||
(assoc acc method (middleware/compile-result [path data] opts method))))
|
||||
(map->Methods {:any any-handler})
|
||||
childs)))))
|
||||
(map->Methods {:any (middleware/compile-result [path top] opts)})
|
||||
(reduce-kv
|
||||
(fn [acc method data]
|
||||
(let [data (meta-merge top data)]
|
||||
(assoc acc method (middleware/compile-result [path data] opts method))))
|
||||
(map->Methods {:any (if (:handler top) (middleware/compile-result [path data] opts))})
|
||||
childs))))
|
||||
|
||||
(defn router
|
||||
"Creates a [[reitit.core/Router]] from raw route data and optionally an options map with
|
||||
support for http-methods and Middleware. See [docs](https://metosin.github.io/reitit/)
|
||||
for details.
|
||||
|
||||
Example:
|
||||
|
||||
(router
|
||||
[\"/api\" {:middleware [wrap-format wrap-oauth2]}
|
||||
[\"/users\" {:get get-user
|
||||
:post update-user
|
||||
:delete {:middleware [wrap-delete]
|
||||
:handler delete-user}}]])
|
||||
|
||||
See router options from [[reitit.core/router]] and [[reitit.ring.middleware/router]]."
|
||||
([data]
|
||||
(router data nil))
|
||||
([data opts]
|
||||
|
|
|
|||
|
|
@ -87,6 +87,17 @@
|
|||
:data data}))))
|
||||
|
||||
(defn router
|
||||
"Creates a [[reitit.core/Router]] from raw route data and optionally an options map with
|
||||
support for Middleware. See [docs](https://metosin.github.io/reitit/) for details.
|
||||
|
||||
Example:
|
||||
|
||||
(router
|
||||
[\"/api\" {:middleware [wrap-format wrap-oauth2]}
|
||||
[\"/users\" {:middleware [wrap-delete]
|
||||
:handler get-user}]])
|
||||
|
||||
See router options from [[reitit.core/router]]."
|
||||
([data]
|
||||
(router data nil))
|
||||
([data opts]
|
||||
|
|
@ -106,6 +117,6 @@
|
|||
"Creates a vanilla ring middleware chain out of sequence of
|
||||
IntoMiddleware thingies."
|
||||
([middleware handler data]
|
||||
(chain middleware handler data nil))
|
||||
(chain middleware handler data nil))
|
||||
([middleware handler data opts]
|
||||
(compile-handler (expand middleware data opts) handler)))
|
||||
|
|
|
|||
Loading…
Reference in a new issue