2016-04-15 3 views
1

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

ответ

2

Параметры запроса are parsed automatically по пьедесталу, а результирующая карта находится на карте запроса под ключом :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"}.

+0

Спасибо. В ссылке, которую вы предоставляете, говорится о «контексте» (как в: когда запрос соответствует этому маршруту, весь вектор перехватчиков попадает в контекст.) Я смущен, означает ли это карта запроса, когда она говорит о «контекст»? – Zuriar

+1

Не совсем. [Context] (https://github.com/pedestal/pedestal/blob/master/guides/documentation/service-context-reference.md) - это то, что передается по цепочке перехватчиков, и оно содержит карту запросов среди другие предметы. –

Смежные вопросы