latest
website.git ยท Tickets
website.git > main > latest > files / src
Return an internal server error when the a request fails
Commit: 105221d1ed0712853edaeb79bf04b111069661c5
Parent: 40e2b5d
3 changed files:
deps.edn view file
@@ -4,5 +4,6 @@ :extra-deps {nrepl/nrepl {:mvn/version "1.8.0"}}}} :deps {org.clojure/clojure {:mvn/version "1.13.0-alpha9"}+ org.clojure/tools.logging {:mvn/version "1.3.1"} ring/ring-core {:mvn/version "1.8.2"} ring/ring-jetty-adapter {:mvn/version "1.8.2"}}}src/dev/grahp/website/middleware.clj view file
@@ -0,0 +1,15 @@+(ns dev.grahp.website.middleware+ (:require+ [clojure.tools.logging :as log]))++(defn wrap-errors+ "Returns an Internal Server Error when the app throws an Exception."+ [app]+ (fn [request]+ (try (app request)+ (catch Exception e+ (log/error e)+ (flush)+ {:status 500+ :headers {"Content-Type" "text/html"}+ :body "Internal server error! D:\n\nPlease tell Grahp!"}))))src/dev/grahp/website/server.clj view file
@@ -1,5 +1,6 @@ (ns dev.grahp.website.server (:require+ [dev.grahp.website.middleware :refer [wrap-errors]] [dev.grahp.website.path :as path] [ring.adapter.jetty :refer [run-jetty]] [ring.middleware.file :refer [wrap-file]]@@ -17,6 +18,7 @@ (-> #'handler (wrap-file "/srv/website/files" {:index-files? false}) (wrap-resource "files")- (path/wrap-path))+ (path/wrap-path)+ (wrap-errors)) {:port 8000 :host "127.0.0.1"}))