cohttpversion
An OCaml library for HTTP clients and servers
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 |
---|---|
Authors | Anil Madhavapeddy, Stefano Zacchiroli, David Sheets, Thomas Gazagnaire, David Scott, Rudi Grinberg and Andy Ray |
License | ISC |
Published | |
Homepage | https://github.com/mirage/ocaml-cohttp |
Issue Tracker | https://github.com/mirage/ocaml-cohttp/issues |
Maintainer | anil@recoil.org |
Dependencies |
|
Source [http] | https://github.com/mirage/ocaml-cohttp/releases/download/v1.1.0/cohttp-1.1.0.tbz sha256=b25482fa09312ee7408cea671f03d3c3d01580b6ab9a9e09a1d3d96331483ec4 md5=7624e77774b90112370924f2d21af436 |
Edit | https://github.com/ocaml/opam-repository/tree/master/packages/cohttp/cohttp.1.1.0/opam |
Required by
- aws-async
- aws-lwt
- aws-s3>=2.0.0 & <4.0.0
- awsm
- awsm-codegen
- azblob-async
- azure-cosmos-db
- bap-server>=0.2.0
- c3
- calculon-web<0.5
- canary
- cca>=0.6.2
- cohttp-async>=1.0.0 & <2.2.0
- cohttp-lwt=1.1.1 | =2.1.3
- cohttp-lwt-jsoo>=1.0.0 & <2.2.0
- cohttp-mirage!=2.1.1 & <2.5.5
- cohttp-top>=1.0.0 & <2.2.0
- comby-semantic
- cowablogawith-test & >=0.0.9 & !=0.2.2
- datakit<0.10.0
- dblp-api
- dropbox>=0.2
- frenetic>=3.3.0 & <5.0.5
- gitwith-test & (=1.4.10 | >=1.5.0 & <1.10.0)
- git-cohttp
- git-http>=2.0.0
- git-paf<3.5.0
- git-unix<1.10.0 | >=2.0.0 & <3.0.0
- github>=3.0.1 & <4.4.0
- github-jsoo>=3.0.1 & <4.4.0
- github-unix>=4.2.0 & <4.4.0
- graphql-cohttp<0.9.0
- hockmd
- imaplet-lwt>=0.1.3
- influxdb-async
- influxdb-lwt
- iocaml<0.4.8
- ip2location
- ip2locationio
- ip2whois
- irminwith-test & >=0.9.0 & !=0.11.1 & <1.0.0
- irmin-cli
- 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.13.0
- learn-ocaml-client<0.13.0
- letsencrypt<0.3.0
- links>=0.7.3
- magic-trace
- mechaml>=1.1.0
- merge-queueswith-test & >=0.2.0
- mirage-http=2.0.0
- mirage-www>=1.1.0
- nsq>=0.2.4
- ocamlapi
- oframl
- ojs-base>=0.3.0 & <0.6.0
- opium=0.13.3
- opium_kernel
- podge
- ppx_json_types
- prof_spacetime>=0.3.0
- prometheus-app>=0.5 & <1.2
- quests
- session-cohttp
- smtmlwith-dev-setup & >=0.3.1
- sociaml-facebook-api>=0.4.1
- telegraml>=2.2.0
- transmission-rpc
- webmachine>=0.4.0
- websocket>=2.10 & <2.14
- xen-api-client>=0.9.8 & <0.9.14