cohttp

An OCaml library for HTTP clients and servers
Description

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

See the cohttp-async, cohttp-lwt, cohttp-lwt-unix, cohttp-lwt-jsoo and cohttp-mirage libraries for concrete implementations for particular targets.

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.

Install
Published
15 Nov 2022
Authors
Maintainers
Sources
cohttp-eio-6.0.0.alpha0.tbz
sha256=2ed4acd5ea309ca064731ec9f02a4b4afcec1ab000f471da68ae81355130b56e sha512=e741293352d8376eaf7ccc7ba986dc8fd33cc560b8a786d4b4f8cffde5f1d78651dd5dbb944db00e57a48f25bffdde8d6d7b8c5828605ed02f295c297ef87fdd
Dependencies
odoc with-doc
alcotest with-test
fmt with-test
base64 >= "3.1.0"
ppx_sexp_conv >= "v0.13.0"
uri >= "2.0.0"
re >= "1.9.0"
ocaml >= "4.08"
http = version
dune >= "2.9"
Reverse Dependencies
aws-s3 >= "2.0.0" & < "4.0.0"
cca >= "0.6.2"
cohttp-async >= "1.0.0" & < "2.2.0" | >= "6.0.0~alpha0"
cohttp-lwt >= "6.0.0~alpha0"
cohttp-lwt-jsoo >= "1.2.0" & < "2.2.0" | >= "6.0.0~alpha0"
cohttp-lwt-unix >= "6.0.0~alpha0"
cohttp-mirage >= "6.0.0~alpha0"
cohttp-top >= "1.0.0" & < "2.2.0" | >= "6.0.0~alpha0"
cowabloga >= "0.0.9" & != "0.2.2"
current_github >= "0.4" & < "0.6"
current_web >= "0.4" & < "0.6"
datakit < "0.10.0"
dropbox >= "0.2"
frenetic >= "3.3.0"
git = "1.4.10" | >= "1.5.0" & < "1.10.0"
git-paf < "3.5.0"
git-unix < "1.10.0" | >= "2.1.1" & < "3.0.0"
github >= "3.0.1"
github-jsoo >= "4.1.0" & < "4.3.0" | >= "4.4.0"
github-unix >= "4.2.0"
imaplet-lwt >= "0.1.3"
iocaml < "0.4.8"
irmin >= "0.9.0" & != "0.11.1" & < "1.0.0"
irmin-graphql >= "2.3.0"
irmin-http >= "2.3.0"
irmin-mirage-git >= "2.3.0" & < "2.8.0"
irmin-unix < "0.9.9" | >= "2.3.0"
learn-ocaml != "0.12"
letsencrypt < "0.3.0"
links >= "0.7.3"
merge-queues >= "0.2.0"
mirage-http = "2.0.0"
mirage-www >= "1.1.0"
nsq >= "0.2.4"
ojs-base >= "0.3.0"
opium = "0.13.3"
podge >= "0.4"
prometheus-app >= "0.5" & < "1.2"
river >= "0.2"
telegraml >= "2.2.0"
webmachine >= "0.4.0"
websocket >= "2.10"
xen-api-client >= "0.9.8" & < "0.9.14"