Tag: SERVANT
Estoy usando Servant generic y tengo un tipo de dato para mis rutas: data Routes route = Routes { getLiveness :: route :- GetLiveness, getReadiness :: route :- GetReadiness, getAuthVerifyEmailToken :: route :- GetAuthVerifyEmailToken, postAuthEmail :: route :- PostAuthEmail, … } deriving (Generic) type BackendPrefix = “backend” type AuthPrefix = . . . Read more
Supongamos que tenemos esta API simple: type FooAPI = “foo” :> QueryParam “age” Int :> Get ‘[PlainText] Text ¿Existe alguna forma de vincular la API de nivel de tipo de servant con una función que genere la URL para ella? Algo así como someMagicFunction :: Proxy api -> SomeTypeFamily api . . . Read more
Suponiendo que estoy ejecutando un servidor web Servant con dos endpoints, con un tipo que se ve así: type BookAPI = “books” :> Get ‘[JSON] (Map Text Text) :<|> “book” :> Capture “Name” Text :> ReqBody ‘[JSON] (Text) :> Post ‘[JSON] (Text) λ:T.putStrLn $ layout (Proxy :: Proxy BookAPI) / . . . Read more
Tengo el siguiente endpoint definido utilizando servant: type ServiceAPI = “maintenance” :> Get ‘[PlainText] Text <p>myServer :: MonadIO m => MonadLog m => MonadMetrics m => MonadRandom m => Config -> Client -> ServerT ServiceAPI m myServer cfg client = … El contenido a veces es demasiado grande para ser . . . Read more
Estoy tratando de entender el propósito de la función “serveWithContext” de Servant. La documentación indica que no es un reemplazo para Monad ReaderT, pero no estoy seguro del problema que intenta resolver y que no aborda el Monad ReaderT. Por ejemplo, esto es del ejemplo en la página de Github . . . Read more