2016-04-15 1 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)は、インターセプタチェーンの周りを渡され、リクエストマップを含んでいますその他の項目。 –