Module Http

type header = string * string
val header : string -> header list -> string option
type request = {
  1. meth : string;
  2. target : string;
  3. headers : header list;
}
val get : host:string -> string -> request
val post : host:string -> content_type:string -> body:string -> string -> request
val request_to_string : ?body:string -> request -> string
type response = {
  1. version : string;
  2. status : int;
  3. reason : string;
  4. headers : header list;
  5. body : string;
}
val parse_status_line : string -> (string * int * string, string) Stdlib.result
val dechunk : string -> (string, string) Stdlib.result
val body : status:int -> header list -> string -> (string, string) Stdlib.result
val parse_response : string -> (response, string) Stdlib.result
val is_redirect : int -> bool
type parsed_request =
  1. | Incomplete
  2. | Bad of string
  3. | Request of request * string * int
val parse_request : string -> parsed_request
val reason : int -> string
val response : int -> content_type:string -> string -> response
val response_to_string : response -> string