Как получить параметры запроса URL в пьедестале?

Как мне получить параметры URL-адреса в карте запроса в Pedestal? Я предполагаю, что для этого нужно использовать перехватчик? Однако документация пьедестала (или ее серьезное отсутствие) совсем не проясняет это. Спасибо.


person Zuriar    schedule 15.04.2016    source источник


Ответы (1)


Параметры запроса анализируются автоматически по пьедесталу, а полученная карта помещается в карту запроса под ключом :query-params.

В качестве простого примера начните с шаблона службы пьедестала и используйте следующие определения:

(defn home-page
  [request]
  (ring-resp/response (format "Hello with params: %s" (:query-params request))))

(defroutes routes
  [[["/" {:get home-page}]]])

Теперь, если вы перейдете к http://localhost:8080/?param=true&other=1234, вы должны увидеть Hello world with paramters: {:param "true", :other "1234"}.

person Chad Taylor    schedule 17.04.2016
comment
Спасибо. В предоставленной вами ссылке говорится о контексте (например, когда запрос соответствует этому маршруту, весь вектор перехватчиков попадает в контекст.) Я смущен, означает ли это карту запроса, когда он говорит о «контексте '? - person Zuriar; 18.04.2016
comment
Не совсем. контекст — это то, что передается по цепочке перехватчиков и содержит карту запроса среди других элементов. - person Chad Taylor; 19.04.2016