Cohttp_lwt_unix.Request
include module type of struct include Cohttp.Request end
This contains the metadata for a HTTP/1.x request header, including the headers
, version
, meth
and uri
. The body is handled by the separate S
module type, as it is dependent on the IO implementation.
The interface exposes a fieldslib
interface which provides individual accessor functions for each of the records below. It also provides sexp
serializers to convert to-and-from an Core.Std.Sexp.t
.
include Cohttp.S.Request with type t = Http.Request.t
type t = Http.Request.t = {
headers : Cohttp.Header.t;
HTTP request headers
*)meth : Cohttp.Code.meth;
HTTP request method
*)resource : string;
Request path and query
*)version : Cohttp.Code.version;
HTTP version, usually 1.1
*)}
val headers : t -> Cohttp.Header.t
val meth : t -> Cohttp.Code.meth
val resource : t -> string
val version : t -> Cohttp.Code.version
val encoding : t -> Cohttp.Transfer.encoding
val make :
?meth:Cohttp.Code.meth ->
?version:Cohttp.Code.version ->
?encoding:Cohttp.Transfer.encoding ->
?headers:Cohttp.Header.t ->
Uri.t ->
t
make ()
is a value of t
. The default values for the request, if not specified, are: status
is `Ok
, version
is `HTTP_1_1
, flush
is false
and headers
is Header.empty
. The request encoding value is determined via the Header.get_transfer_encoding
function and, if not found, uses the default value Transfer.Fixed 0
.
val is_keep_alive : t -> bool
Return true whether the connection should be reused
val uri : t -> Uri.t
val make_for_client :
?headers:Cohttp.Header.t ->
?chunked:bool ->
?body_length:int64 ->
Cohttp.Code.meth ->
Uri.t ->
t
val has_body : t -> [ `No | `Unknown | `Yes ]
val pp_hum : Stdlib.Format.formatter -> t -> unit
Human-readable output, used by the toplevel printer
module Make = Cohttp.Request.Make
module Private = Cohttp.Request.Private
include sig ... end
module IO : sig ... end
val read_body_chunk : reader -> Cohttp.Transfer.chunk IO.t