Cómo hacer redirecciones HTTP 302 con Noir Web framework
Estoy ayudando a configurar un sitio web con el marco Noir de Clojure, aunque tengo mucha más experiencia con Django / Python. En Django, estoy acostumbrado a URL como
http://site/some/url
siendo 302 redirigido automáticamente a
http://site/some/url/
Noir es más exigente y no hace esto.
¿Cuál sería la forma correcta de hacer esto automáticamente? Dado que las buenas URL son una forma importante de acceder a un sitio y muchos usuarios olvidarán la barra diagonal, esta es una funcionalidad básica que me gustaría agregar a mi sitio.
EDITAR: Esto es lo que finalmente me funcionó, basado en las sugerencias de @ IvanKoblik:
(defn wrap-slash [handler]
(fn [{:keys [uri] :as req}]
(if (and (.endsWith uri "/") (not= uri "/"))
(handler (assoc req :uri (.substring uri
0 (dec (count uri)))))
(handler req))))