Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Contains bindings to the Extism PDK HTTP interface
Synopsis
- data Request = Request {}
- data Response = Response {
- statusCode :: Int
- memory :: Memory
- newRequest :: String -> Request
- withMethod :: String -> Request -> Request
- withHeaders :: [(String, String)] -> Request -> Request
- responseMemory :: Response -> Memory
- responseByteString :: Response -> IO ByteString
- responseString :: Response -> IO String
- responseJSON :: Data a => Response -> IO (Either String a)
- response :: FromBytes a => Response -> IO (Either String a)
- sendRequestWithBody :: ToBytes a => Request -> a -> IO Response
- sendRequest :: ToBytes a => Request -> Maybe a -> IO Response
Documentation
HTTP Request
Instances
Data Request Source # | |
Defined in Extism.PDK.HTTP gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Request -> c Request # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Request # toConstr :: Request -> Constr # dataTypeOf :: Request -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Request) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Request) # gmapT :: (forall b. Data b => b -> b) -> Request -> Request # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Request -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Request -> r # gmapQ :: (forall d. Data d => d -> u) -> Request -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Request -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Request -> m Request # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Request -> m Request # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Request -> m Request # |
withMethod :: String -> Request -> Request Source #
Update a Request
with the provided HTTP request method (GET, POST, PUT, DELETE, ...)
withHeaders :: [(String, String)] -> Request -> Request Source #
Update a Request
with the provided HTTP request headers
responseByteString :: Response -> IO ByteString Source #
Get the Response
body as a ByteString
response :: FromBytes a => Response -> IO (Either String a) Source #
Get the Response
body and decode it