http-io-streams

HTTP and WebSocket client based on io-streams

Version on this page:0.1.6.2@rev:1
LTS Haskell 22.29:0.1.7.0@rev:1
Stackage Nightly 2024-07-13:0.1.7.0@rev:1
Latest on Hackage:0.1.7.0@rev:1

See all snapshots http-io-streams appears in

BSD-3-Clause AND GPL-2.0-or-later licensed by Andrew Cowie, Herbert Valerio Riedel
Maintained by https://github.com/haskell-hvr/http-io-streams
This version can be pinned in stack with:http-io-streams-0.1.6.2@sha256:099bb6a878152a28017f4d1df68f9555fa0c67feeeca3f3a3ea8518185f0d8ab,4913

Module documentation for 0.1.6.2

An HTTP client with WebSocket (RFC 6455) support, using the Snap Framework's io-streams library to handle the streaming IO. The http-io-streams API designed for ease of use when querying web services and dealing with the result as streaming I/O.

The main HTTP/1.1 part of the library is exported in a single module Network.Http.Client; the WebSocket specific functionality is available from the Network.Http.Client.WebSocket module.

NOTE: This package originally started as a fork of http-streams with a lighter dependency footprint focusing on core HTTP functionality.

Changes

See also http://pvp.haskell.org/faq

0.1.6.2

  • Allow mtl-2.3 (no code change).
  • Run test-suite via cabal test.

Tested with GHC 7.4 - 9.6.

0.1.6.1 revision 1

  • Allow text-2.0 (no code change).

0.1.6.1

  • Build with GHC 9.2 and ghc-prim-0.8 (via base-4.16).

0.1.6.0

  • New function openConnectionAddress'' supporting supplying local SSLContexts as well as modifying the SSL connection before initiating the client SSL handshake.
  • New function openConnectionSSL' which allows to customize the SSL connection before a client SSL handshake is attempted.
  • New convenience function getContextSSL function allowing to retrieve global SSLContext.

0.1.5.0

  • New function openConnectionAddress' function supporting supplying local SSLContexts.

0.1.4.0

  • New module Network.Http.Client.WebSocket providing basic RFC6455 support.
  • New function inputStreamBodyChunked supporting breaking up over-sized chunks.

0.1.3.0

  • New functions receiveUpgradeResponse, receiveConnectResponse, and unsafeWithRawStreams for accessing full-duplex low-level streams (e.g. for upgrading to Websockets protocol).
  • New function makeConnection for constructing a Connection object over custom streams.

0.1.2.0

  • New functions unsafeReceiveResponse and unsafeReceiveResponseRaw that do not automatically skip to end-of-stream.

0.1.1.0

  • New alternative connection-setup API (ConnectionAddress et al.).
  • New function getHeaderMap for exporting all response headers at once.
  • Add convenience functions bytestringBody, lazyBytestringBody, utf8TextBody, utf8LazyTextBody.
  • Add support for Brotli HTTP compression.

0.1.0.0

  • First version. Released on an unsuspecting world.
  • Derived from http-streams-core-0.8.6.1 & http-common-0.8.2.0.