cohttp-asyncversion

An OCaml library for HTTP clients and servers

Join the chat at https://gitter.im/mirage/ocaml-cohttp

Cohttp is an OCaml library for creating HTTP daemons. It has a portable HTTP parser, and implementations using various asynchronous programming libraries:

  • Cohttp_lwt_unix uses the Lwt library, and specifically the UNIX bindings.
  • Cohttp_async uses the Async library.
  • Cohttp_lwt exposes an OS-independent Lwt interface, which is used by the Mirage interface to generate standalone microkernels use the cohttp-mirage subpackage.
  • Cohttp_lwt_xhr compiles to a JavaScript module that maps the Cohttp calls to XMLHTTPRequests. This is used to compile OCaml libraries like the GitHub bindings to JavaScript and still run efficiently.

You can implement other targets using the parser very easily. Look at the IO signature in lib/s.mli and implement that in the desired backend.

You can activate some runtime debugging by setting COHTTP_DEBUG to any value, and all requests and responses will be written to stderr. Further debugging of the connection layer can be obtained by setting CONDUIT_DEBUG to any value.

Tags org:mirage org:xapi-project
AuthorsAnil Madhavapeddy, Stefano Zacchiroli, David Sheets, Thomas Gazagnaire, David Scott, Rudi Grinberg and Andy Ray
LicenseISC
Published
Homepagehttps://github.com/mirage/ocaml-cohttp
Issue Trackerhttps://github.com/mirage/ocaml-cohttp/issues
Maintaineranil@recoil.org
Dependencies
Source [http] https://github.com/mirage/ocaml-cohttp/releases/download/v1.0.0/cohttp-1.0.0.tbz
sha256=42b26ee6126ce0c607345e285a926641f5a9aa48b2854319b1d42c3782a704e0
md5=756f590576d4a60ce2382ef89274b44b
Edithttps://github.com/ocaml/opam-repository/tree/master/packages/cohttp-async/cohttp-async.1.0.0/opam