kino/src/Request.hs

25 lines
630 B
Haskell

{-# LANGUAGE OverloadedStrings #-}
module Request where
import JSONTypes
import Network.Wreq
import Control.Lens
import Data.Aeson
import Data.Text as T
import Data.Aeson.Lens (key, nth)
import qualified Data.ByteString.Lazy.Internal as BL
testFunc :: IO (JSONResponse JSONListMovies)
testFunc = do
r <- asJSON =<< get "https://yts.mx/api/v2/list_movies.json"
pure $ r ^. responseBody
getMovies :: IO (Either T.Text JSONListMovies)
getMovies = do
r <- asJSON =<< get "https://yts.mx/api/v2/list_movies.json"
pure $ case (r ^. responseBody) of
(JSONResponse "ok" _ d) -> Right d
(JSONResponse _ m _) -> Left m