http-client: An HTTP client engine, intended as a base layer for more user-friendly packages.

[ library, mit, network ] [ Propose Tags ] [ Report a vulnerability ]

Hackage documentation generation is not reliable. For up to date documentation, please see: http://www.stackage.org/package/http-client.


[Skip to Readme]

Flags

Automatic Flags
NameDescriptionDefault
network-uri

Get Network.URI from the network-uri package

Enabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0, 0.2.0.0, 0.2.0.1, 0.2.0.2, 0.2.0.3, 0.2.1, 0.2.1.1, 0.2.2, 0.2.2.1, 0.2.2.2, 0.2.2.3, 0.2.2.4, 0.2.3, 0.2.3.1, 0.3.0, 0.3.0.1, 0.3.0.2, 0.3.1, 0.3.1.1, 0.3.2, 0.3.2.1, 0.3.2.2, 0.3.3, 0.3.3.1, 0.3.3.2, 0.3.4, 0.3.5, 0.3.6, 0.3.6.1, 0.3.7.1, 0.3.7.2, 0.3.8, 0.3.8.1, 0.3.8.2, 0.4.0, 0.4.0.1, 0.4.1, 0.4.2, 0.4.2.1, 0.4.2.2, 0.4.3, 0.4.4, 0.4.5, 0.4.6, 0.4.6.1, 0.4.6.2, 0.4.7, 0.4.7.1, 0.4.7.2, 0.4.8, 0.4.8.1, 0.4.9, 0.4.10, 0.4.11, 0.4.11.1, 0.4.11.2, 0.4.11.3, 0.4.12, 0.4.13, 0.4.14, 0.4.15, 0.4.16, 0.4.17, 0.4.18, 0.4.18.1, 0.4.19, 0.4.20, 0.4.21, 0.4.22, 0.4.22.1, 0.4.23, 0.4.24, 0.4.25, 0.4.26, 0.4.26.1, 0.4.26.2, 0.4.27, 0.4.27.1, 0.4.28, 0.4.29, 0.4.30, 0.4.31, 0.4.31.1, 0.4.31.2, 0.5.0, 0.5.0.1, 0.5.1, 0.5.2, 0.5.3, 0.5.3.1, 0.5.3.2, 0.5.3.3, 0.5.3.4, 0.5.4, 0.5.5, 0.5.6, 0.5.6.1, 0.5.7.0, 0.5.7.1, 0.5.8, 0.5.9, 0.5.10, 0.5.11, 0.5.12, 0.5.12.1, 0.5.13, 0.5.13.1, 0.5.14, 0.6.0, 0.6.1, 0.6.1.1, 0.6.2, 0.6.3, 0.6.4, 0.6.4.1, 0.7.0, 0.7.1, 0.7.2, 0.7.2.1, 0.7.3, 0.7.4, 0.7.5, 0.7.6, 0.7.7, 0.7.8, 0.7.9, 0.7.10, 0.7.11, 0.7.12, 0.7.13, 0.7.13.1, 0.7.14, 0.7.15, 0.7.16, 0.7.17
Change log ChangeLog.md
Dependencies array, base (>=4.5 && <4.11), base64-bytestring (>=1.0 && <1.1), blaze-builder (>=0.3), bytestring (>=0.9), case-insensitive (>=1.0), containers, cookie, data-default-class, deepseq (>=1.3 && <1.5), exceptions (>=0.4), filepath, ghc-prim, http-types (>=0.8), mime-types, network (>=2.3 && <2.9), network-uri (>=2.6), random, streaming-commons (>=0.1.0.2 && <0.2), text (>=0.11), time (>=1.2), transformers [details]
License MIT
Author Michael Snoyman
Maintainer michael@snoyman.com
Revised Revision 2 made by HerbertValerioRiedel at 2019-02-10T22:15:35Z
Category Network
Home page https://github.com/snoyberg/http-client
Uploaded by MichaelSnoyman at 2016-06-16T12:06:39Z
Distributions Arch:0.7.17, Debian:0.6.4.1, Fedora:0.7.13.1, FreeBSD:0.4.20, LTSHaskell:0.7.17, NixOS:0.7.17, Stackage:0.7.17, openSUSE:0.7.17
Reverse Dependencies 571 direct, 1429 indirect [details]
Downloads 361511 total (1269 in the last 30 days)
Rating 2.25 (votes: 2) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2016-11-23 [all 1 reports]

Readme for http-client-0.4.29

[back to package description]

http-client

Full tutorial docs are available at: https://github.com/commercialhaskell/jump/blob/master/doc/http-client.md

An HTTP client engine, intended as a base layer for more user-friendly packages.

This codebase has been refactored from http-conduit.

Note that, if you want to make HTTPS secure connections, you should use http-client-tls in addition to this library.

Below is a series of cookbook recipes. A number of recipes exist elsewhere, including Network.HTTP.Client and Network.HTTP.Conduit. The goal is to expand this list over time.

Proxy environment variable

Use the following approach to get proxy settings from the http_proxy and https_proxy environment variables.

{-# LANGUAGE OverloadedStrings #-}
import Network.HTTP.Client

main :: IO ()
main = do
    let settings = managerSetProxy
            (proxyEnvironment Nothing)
            defaultManagerSettings
    man <- newManager settings
    let req = "http://httpbin.org"
            -- Note that the following settings will be completely ignored.
            { proxy = Just $ Proxy "localhost" 1234
            }
    httpLbs req man >>= print