Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
HTTP/1.1 request handling
This contains the metadata for a HTTP/1.1 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 S.Request
type t = {
headers : Header.t;
HTTP request headers
*)meth : Code.meth;
HTTP request method
*)resource : string;
Request path and query
*)version : Code.version;
HTTP version, usually 1.1
*)encoding : Transfer.encoding;
transfer encoding of this HTTP request
*)}
include sig ... end
val encoding : t -> Transfer.encoding
val version : t -> Code.version
val resource : t -> string
module Fields : sig ... end
val t_of_sexp : Sexplib.Sexp.t -> t
val sexp_of_t : t -> Sexplib.Sexp.t
val make :
?meth:Code.meth ->
?version:Code.version ->
?encoding:Transfer.encoding ->
?headers:Header.t ->
Uri.t ->
t
Return true whether the connection should be reused
val is_keep_alive : t -> bool
Return true whether the connection should be reused
val pp_hum : Format.formatter -> t -> unit
Human-readable output, used by the toplevel printer