switch from compojure to reitit

This commit is contained in:
Travis Shears 2025-06-05 10:07:19 +02:00
parent cfa4190ce5
commit d69f14f906
4 changed files with 51 additions and 11 deletions

View file

@ -0,0 +1,9 @@
{
"version": "1",
"name": "CodeSnippets",
"type": "collection",
"ignore": [
"node_modules",
".git"
]
}

View file

@ -0,0 +1,11 @@
meta {
name: ping
type: http
seq: 1
}
get {
url: http://localhost:3000/api/ping
body: none
auth: none
}

View file

@ -5,10 +5,10 @@
org.slf4j/slf4j-simple {:mvn/version "2.0.16"}
;; routing:
compojure/compojure {:mvn/version "1.7.1"}
metosin/reitit {:mvn/version "0.9.1"}
;; convenient package of "default" middleware:
ring/ring-defaults {:mvn/version "0.5.0"}
;; ring/ring-defaults {:mvn/version "0.5.0"}
org.clojure/clojure {:mvn/version "1.12.1"}}}

View file

@ -1,16 +1,36 @@
(ns snippets.api
(:require [compojure.core :refer [defroutes GET]]
[compojure.route :as route]
[ring.adapter.jetty :as jetty]
[ring.middleware.defaults :refer [wrap-defaults site-defaults]]))
(:require
[ring.adapter.jetty :as jetty]
[reitit.ring :as rr]))
(defroutes app-routes
(GET "/" [] "Hello World")
(route/not-found "Not Found"))
(defn handler [_]
{:status 200, :body "ok"})
(defn handle-not-found [_]
{:status 404, :body "not found yo"})
(defn wrap [handler id]
(fn [request]
(update (handler request) :wrap (fnil conj '()) id)))
(def app
;; use #' prefix for REPL-friendly code -- see note below
(wrap-defaults #'app-routes site-defaults))
(rr/ring-handler
(rr/router
["/api" {:middleware [[wrap :api]]}
["/ping" {:get handler
:name ::ping}]
["/admin" {:middleware [[wrap :admin]]}
["/users" {:get handler
:post handler}]]])
(rr/create-default-handler)))
;; (defroutes app-routes
;; (GET "/" [] "Hello World")
;; (route/not-found "Not Found"))
;; (def app
;; ;; use #' prefix for REPL-friendly code -- see note below
;; (wrap-defaults #'app-routes site-defaults))
(defn -main []
(jetty/run-jetty #'app {:port 3000}))