request 0.3.0.0 → 0.3.1.0
raw patch · 2 files changed
+13/−12 lines, 2 files
Files
- request.cabal +1/−1
- src/Network/HTTP/Request.hs +12/−11
request.cabal view
@@ -1,5 +1,5 @@ name: request-version: 0.3.0.0+version: 0.3.1.0 -- synopsis: description: "HTTP client for haskell, inpired by requests and http-dispatch." homepage: https://github.com/aisk/request#readme
src/Network/HTTP/Request.hs view
@@ -59,34 +59,35 @@ show TRACE = "TRACE" show (Method method) = method -data Request a = Request+data Request = Request { method :: Method, url :: String, headers :: Headers,- body :: Maybe a+ body :: Maybe BS.ByteString } deriving (Show) -- Compatibility accessor functions-requestMethod :: Request a -> Method+requestMethod :: Request -> Method requestMethod req = req.method -requestUrl :: Request a -> String+requestUrl :: Request -> String requestUrl req = req.url -requestHeaders :: Request a -> Headers+requestHeaders :: Request -> Headers requestHeaders req = req.headers -requestBody :: Request a -> Maybe a+requestBody :: Request -> Maybe BS.ByteString requestBody req = req.body -toLowlevelRequest :: (S.IsString a) => Request a -> IO LowLevelClient.Request+toLowlevelRequest :: Request -> IO LowLevelClient.Request toLowlevelRequest req = do- initReq <- LowLevelClient.parseRequest $ requestUrl req+ initReq <- LowLevelClient.parseRequest req.url return $ initReq- { LowLevelClient.method = C.pack . show $ requestMethod req,- LowLevelClient.requestHeaders = map (\(k, v) -> (CI.mk k, v)) $ requestHeaders req+ { LowLevelClient.method = C.pack . show $ req.method,+ LowLevelClient.requestHeaders = map (\(k, v) -> (CI.mk k, v)) req.headers,+ LowLevelClient.requestBody = maybe mempty LowLevelClient.RequestBodyBS req.body } data Response a = Response@@ -122,7 +123,7 @@ ) body -send :: (S.IsString a) => Request a -> IO (Response a)+send :: (S.IsString a) => Request -> IO (Response a) send req = do manager <- LowLevelTLSClient.getGlobalManager llreq <- toLowlevelRequest req