Advertisement
Guest User

Untitled

a guest
Jun 19th, 2017
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ;; I would like to keep the routes grouped and at separate swagger end points
  2.  
  3. ;; :body-params are present here
  4. (defapi service-routes
  5.   {:swagger {:ui "/swagger-ui"
  6.    :spec "/swagger.json"
  7.    :data {:info {:version "1.0.0"
  8.                  :description "Public Services"}}}}
  9.   (POST "/register" req
  10.         :return Result
  11.         :body [user UserRegistration]
  12.         :summary "register a new user"
  13.         (auth/register! req user)))
  14.  
  15. ;; :body-params are missing here
  16. (defapi restricted-service-routes
  17.   {:swagger {:ui "/swagger-ui-private"
  18.              :spec "/swagger-private.json"
  19.              :data {:info {:version "1.0.0"
  20.                            :description "Private Services"}}}}
  21.   (POST "/members" req
  22.         :return Result
  23.         :body [member NewMember]
  24.         :summary "handles image upload"
  25.         (members/create! (:identity req) member)))
  26.  
  27. ;; In the handler I wrap the routes
  28. (def app-routes
  29.   (routes
  30.     #'service-routes
  31.     (wrap-routes #'restricted-service-routes middleware/wrap-auth)
  32.     (wrap-routes #'home-routes middleware/wrap-csrf)
  33.     (route/not-found
  34.       (:body
  35.         (error-page {:status 404
  36.                      :title "page not found"})))))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement