Skip to content

Instantly share code, notes, and snippets.

@paulspencerwilliams
Created September 6, 2015 18:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save paulspencerwilliams/10bf7a0bf69fbcc92308 to your computer and use it in GitHub Desktop.
Save paulspencerwilliams/10bf7a0bf69fbcc92308 to your computer and use it in GitHub Desktop.
{:ssl-client-cert nil,
:protocol "HTTP/1.1",
:cookies {},
:remote-addr "0:0:0:0:0:0:0:1",
:params {},
:flash nil,
:route-params {},
:headers {"origin" "http://localhost:3000", "host" "localhost :3000", "user-agent" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/600.8.9 (KHTML, like Gecko) Version/8.0.8 Safari/600.8.9", "content-type" "application/transit+json; charset=UT
F-8", "content-length" "12", "referer" "http://localhost:3000/", "connection" "keep-alive", "accept" "application/json, application/edn, application/transit+json, text/plain, text/html, */*", "
accept-language" "en-us", "accept-encoding" "gzip, deflate"},
:server-port 3000,
:content-length 12,
:form-params {},
:compojure/route [:post "/weights"],
:session/key nil,
:query-params {},
:content-type "application/transit+json; charset=UTF-8",
:character-encoding "UTF-8",
:uri "/weights",
:server-name "localhost",
:query-string nil,
:body nil,
:multipart-params {},
:scheme :http,
:request-method :post,
:session {}}
(ns wat.handler
(:require [wat.datomic :as db]
[compojure.core :refer [GET POST defroutes]]
[compojure.route :refer [not-found resources]]
[ring.middleware.defaults :refer [site-defaults wrap-defaults]]
[ring.middleware.transit :refer [wrap-transit-body]]
[hiccup.core :refer [html]]
[hiccup.page :refer [include-js include-css]]
[prone.middleware :refer [wrap-exceptions]]
[ring.middleware.reload :refer [wrap-reload]]
[ring.util.response :refer [redirect]]
[environ.core :refer [env]]
[clojure.data.json :as json :refer [write-str]]))
(defn record-weight [req]
(prn req)
(let [date (get (:body req) :date )
weight (get (:body req) :weight)]
(db/register date weight))
{:status 200
:headers {"Content-Type" "application/json"}
:body (json/write-str (db/get-all))})
(defroutes routes
(POST "/weights" req (record-weight req))
(resources "/")
(not-found "Not Found"))
(def app
(let [handler
(wrap-transit-body
(wrap-defaults
#'routes
(assoc-in
site-defaults
[:security :anti-forgery]
false))
{:keywords? true :opts {}})]
(if (env :dev) (-> handler wrap-exceptions wrap-reload) handler)))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment