lookupQueryStringParameterValue :: MonadHandler m => Text -> m (Maybe Text)
lookupQueryStringParameterValue parameterName = getRequest
>>= return . lookup parameterName . reqGetParams
getQueryStringParameterValues :: MonadHandler m => Text -> m ([Text])
getQueryStringParameterValues parameterName = getRequest
>>= return . filter ((==parameterName) . fst) . reqGetParams
>>= return . map fst
getRequest
でYesodRequest
が得られ、YesodRequest {reqGetParams::[(Text,Text)]}
でクエリ文字列の一覧が得られる。
あとはlookup :: Eq a => a -> [(a, b)] -> Maybe b
やらで値を取得すればOK。