On Nov 17, 2007, at 17:07 , Radosław Grzanka wrote:
Hello,
I have a problem with Network.HTTP module
(http://www.haskell.org/http/) version 3001.0.0 . I have already
mailed Bjorn Bringert about it but I didn't get answer yet so maybe
someone here can help me. GHC v. 6.6.1 Ubuntu 7.10 x86_64 .
I have turned on debug flag.
Using get example (http://darcs.haskell.org/http/test/get.hs) I can
download pages like this:
$ ./get http://www.haskell.org/http/
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Haskell HTTP package</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
.... SNIP rest of the content SNIP ....
Also the log contain content of this file.
However, some links misbehaves like:
$ ./get http://www.podshow.com/feeds/gbtv.xml
... no-output ...
however I see content of this xml in debug file and wget downloads
almost 250 kB of data.
Also:
$ ./get http://digg.com/rss/indexvideos_animation.xml
... hangs ...
and debug file has size 0, but wget downloads the file
I could suspect this is xml problem but:
$ ./get http://planet.haskell.org/rss20.xml
<?xml version="1.0"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
<title>Planet Haskell</title>
<link>http://planet.haskell.org/</link>
<language>en</language>
<description>Planet Haskell -
http://planet.haskell.org/</description>
.... SNIP rest of the content SNIP ....
so it works.
Do you have any idea what is going on here? What goes wrong? What
other (high level) modules could I use to download files through http?
Cheers,
Radek.
Hi Radek,
thanks for the report.
This turned out to be a bug in how Network.HTTP handled Chunked
Transfer Encoding. The web server sent the chunk size as
"00004000" (according to RFC 2616 this can be non-empty sequence of
hex digits). However, Network.HTTP treated any chunk size starting
with '0' as a chunk size of 0, which indicates the end of the chunked
encoding.
This is now fixed and a new release with the fix is available from
http://hackage.haskell.org/cgi-bin/hackage-scripts/package/HTTP-3001.0.1
/Björn
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe