From 02004cac8dad638478c211ee97ba9bbf5bf0ecaa Mon Sep 17 00:00:00 2001 From: Audrius <41568862+audriu@users.noreply.github.com> Date: Thu, 22 Apr 2021 09:27:07 +0300 Subject: [PATCH 1/2] Fix Ring example Maybe it is not perfect solution but at least it works. It was somewhat weird that the front page of the lib contains non working examples. --- README.md | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index e075bdff..1c5567e4 100644 --- a/README.md +++ b/README.md @@ -85,24 +85,28 @@ Optionally, the parts can be required separately. A Ring routing app with input & output coercion using [data-specs](https://github.com/metosin/spec-tools/blob/master/README.md#data-specs). ```clj +(require '[muuntaja.core :as m]) (require '[reitit.ring :as ring]) (require '[reitit.coercion.spec]) (require '[reitit.ring.coercion :as rrc]) +(require '[reitit.ring.middleware.muuntaja :as muuntaja]) +(require '[reitit.ring.middleware.parameters :as parameters]) (def app (ring/ring-handler (ring/router ["/api" ["/math" {:get {:parameters {:query {:x int?, :y int?}} - :responses {200 {:body {:total pos-int?}}} - :handler (fn [{{{:keys [x y]} :query} :parameters}] - {:status 200 - :body {:total (+ x y)}})}}]] + :responses {200 {:body {:total int?}}} + :handler (fn [{{{:keys [x y]} :query} :parameters}] + {:status 200 + :body {:total (+ x y)}})}}]] ;; router data affecting all routes - {:data {:coercion reitit.coercion.spec/coercion - :middleware [rrc/coerce-exceptions-middleware + {:data {:coercion reitit.coercion.spec/coercion + :muuntaja m/instance + :middleware [parameters/parameters-middleware rrc/coerce-request-middleware - rrc/coerce-response-middleware]}}))) + muuntaja/format-response-middleware]}}))) ``` Valid request: From 522356ba710d0450f9162be721b46c43168c8596 Mon Sep 17 00:00:00 2001 From: Audrius <41568862+audriu@users.noreply.github.com> Date: Thu, 22 Apr 2021 10:05:02 +0300 Subject: [PATCH 2/2] Fix for the PR comments --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 1c5567e4..378caa04 100644 --- a/README.md +++ b/README.md @@ -106,6 +106,7 @@ A Ring routing app with input & output coercion using [data-specs](https://githu :muuntaja m/instance :middleware [parameters/parameters-middleware rrc/coerce-request-middleware + rrc/coerce-response-middleware muuntaja/format-response-middleware]}}))) ```