[Haskell-cafe] HTTP client libraries
John Goerzen
jgoerzen at complete.org
Thu Mar 27 15:08:41 EDT 2008
Hi folks,
I was recently looking for HTTP client libraries for Haskell. I
investigated several, and it seems that there aren't any really ready
for primetime. Am I missing anything? Here's what I found:
* Bjorn's String-based HTTP
It eats RAM. Does not appear to read data lazily, returns a String,
and may have a memory leak as well. Does not appear to be suited
for anything except very small file downloads.
* nominolo's ByteString port of Bjorn's HTTP
Appears to exist only in a darcs repo linked from his personal blog.
Makes me hesitant to use it in production code, for fear that it
won't be around long-term.
* tagsoup
Broken in many ways. Does not support chunked encoding that is
mandated by HTTP RFC. Will be incompatible with numerous HTTP
servers, and the manual states as much. Port 80 hardcoded.
* network-minihttp
Doesn't appear to actually be very useful as a client.
Also, as far as I have been able to deduce, none of these have
built-in support for https (SSL) URLs.
There is also a Curl binding (or two?) floating around, which I
haven't investigated. It would be nicer to have a native Haskell
solution. Or should I just go write one?
-- John
More information about the Haskell-Cafe
mailing list