我正在尝试创建一个简单的haskell程序,它从Web服务器获取JSON字符串并解析它。
我正在使用Network.Curl的curlGetString方法。
此方法具有以下类型签名
curlGetString :: URLString -> [CurlOption] -> IO (CurlCode, String)
我的问题是:如何将输出从(CurlCode,String)转换为String?
谢谢!
答案 0 :(得分:3)
响应主体只是元组的第二个元素。首先在curlGetString
monad中绑定IO
的结果,然后使用snd
或更好的模式匹配:
main = do
(code, body) <- curlGetString "http://foo.example.com/" [...]
case code of
CurlOK -> putStr body
_ -> putStrLn $ "Error: " ++ show code
不要忘记您可以使用a Hoogle search按类型查找功能。