Module B0_http.Http_client

HTTP clients.

type t

The type for HTTP clients.

val get : ?search:B0_std.Cmd.tool_search -> ?cmd:B0_std.Cmd.t -> unit -> (t, string) Stdlib.result

get ~search ~cmd () looks for cmd (defaults to Cmd.tool "curl") in search (defaults to Os.Cmd.get ~search).

val fetch : ?insecure:bool -> ?follow:bool -> t -> Http.Request.t -> (Http.Response.t, string) Stdlib.result

fetch httpr r performs request r via httpr. If follow is true (default) HTTP redirects for GET and HEAD requests that return 301, 302, 303, 305 or 307 are automatically followed. If insecure is true (defaults to false) TLS server certificates are not checked.

The response's Http.Response.headers are lowercased.

Command line interface

val curl : ?docs:string -> ? -> unit -> B0_std.Cmd.t Cmdliner.Term.t

curl is a cli interface for specifying the curl command line tool.

val curl_fetch_args : ?args:B0_std.Cmd.t -> ?progress:bool -> B0_std.Url.t -> B0_std.Fpath.t -> B0_std.Cmd.t

curl_fetch_args url file are curl arguments to fetch the URL url and write it to file. If progress is true it is reported. args are added to the result before the URL. Redirections are followed.