[Haskell-cafe] tried to use the example given in the source of
nccb2 at kent.ac.uk
Fri Oct 22 10:50:34 EDT 2010
On 22/10/10 14:58, Michael Litchard wrote:
>> main =
>> rsp<- Network.Browser.browse $ do
>> setAllowRedirects True -- handle HTTP redirects
>> request $ getRequest "http://google.com/"
>> fmap (take 100) (getResponseBody rsp)
> but I got this errortest.lhs:10:39:
> Couldn't match expected type `Network.Stream.Result (Response [a])'
> against inferred type `(Network.URI.URI, Response String)'
> In the first argument of `getResponseBody', namely `rsp'
> In the second argument of `fmap', namely `(getResponseBody rsp)'
> In the expression: fmap (take 100) (getResponseBody rsp)
> how did I get this error? I'm perplexed as this came right from the source.
To be specific, it came from the documentation of the library... which
turns out not to match the source. It seems you instead want:
> main = do
> (_, rsp) <- Network.Browser.browse $ do
> setAllowRedirects True -- handle HTTP redirects
> request $ getRequest "http://google.com/"
> print (take 100 $ rspBody rsp)
I've changed the last bit to print the first 100 lines of the result
rather than return them, as I imagine that is what you want if you're
using it as a main function.
More information about the Haskell-Cafe