simpleHTTP is:exact

Download the specified URL, following any redirects, and return the response body. This function will throwIO an HttpException for any response with a non-2xx status code (besides 3xx redirects up to a limit of 10 redirects). It uses parseUrlThrow to parse the input. This function essentially wraps httpLbs. Note: Even though this function returns a lazy bytestring, it does not utilize lazy I/O, and therefore the entire response body will live in memory. If you want constant memory usage, you'll need to use the conduit package and http directly. Note: This function creates a new Manager. It should be avoided in production code.
simpleHTTP req transmits the Request req by opening a direct, non-persistent connection to the HTTP server that req is destined for, followed by transmitting it and gathering up the response as a Result. Prior to sending the request, it is normalized (via normalizeRequest). If you have to mediate the request via an HTTP proxy, you will have to normalize the request yourself. Or switch to using Browser instead. Examples:
simpleHTTP (getRequest "http://hackage.haskell.org/")
simpleHTTP (getRequest "http://hackage.haskell.org:8012/")
simpleHTTP transmits a resource across a non-persistent connection.
Simple way to transmit a resource across a non-persistent connection.
start the server, and handle requests using the supplied ServerPart. This function will not return, though it may throw an exception. NOTE: The server will only listen on IPv4 due to portability issues in the Network module. For IPv6 support, use simpleHTTPWithSocket with custom socket.