在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称(OpenSource Name):aesiniath/http-streams开源软件地址(OpenSource Url):https://github.com/aesiniath/http-streams开源编程语言(OpenSource Language):Haskell 99.9%开源软件介绍(OpenSource Introduction):An HTTP clientAn HTTP client library for Haskell using the Snap Framework's io-streams library to handle the streaming IO. A common case in writing RESTful web services is needing to make onward calls to further servers. This package is intended to make this easy to do. Though originally written for making calls from web apps written with Snap, you can use this from any library or framework. Enjoy! ExampleThe underlying API is very simple: main :: IO ()
main = do
c <- openConnection "www.example.com" 80
let q = buildRequest1 $ do
http GET "/"
setAccept "text/html"
sendRequest c q emptyBody
receiveResponse c (\p i -> do
putStr $ show p
x <- Streams.read i
S.putStr $ fromMaybe "" x)
closeConnection c There are also convenience functions for the common case of making straight-forward GET and POST requests; for instance: get "http://www.example.com/" (\_ i -> Streams.connect i stdout) will {ahem} stream the response body to stdout. Perhaps more interesting (though less streams-oriented), is simply getting the response as a ByteString using one of the pre-defined handlers: x' <- get "https://secure.example.com/" concatHandler See the documentation in Network.Http.Client for further examples and details of usage of the API. |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论