package http
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Module Http.RequestSource
type t = {headers : Header.t;(*HTTP request headers
*)meth : Method.t;(*HTTP request method
*)scheme : string option;(*URI scheme (http or https)
*)resource : string;(*Request path and query
*)version : Version.t;(*HTTP version, usually 1.1
*)encoding : Transfer.encoding;(**)
}requires_content_length t is true if t.meth is one of `POST, `PUT or `PATCH. Otherwise it is false.
A true value indicates that a request must include a "Content-Length" header.
See https://www.rfc-editor.org/rfc/rfc7230#section-3.3.2
content_length t is Some x if the "Content-Length" header in t exists and its value x is a non negative integer, x>=0
It is None if requires_content_length t = false or the value encoded in "Content-Length" is not a valid integer value, i.e >= 0.
See https://www.rfc-editor.org/rfc/rfc7230#section-3.3.2
supports_chunked_trailers t is true if t contains HTTP header "TE: trailers". Otherwise it is false.
add_te_trailers t adds HTTP headers, 'TE' and 'Connection' to indicate that a user-agent can handle HTTP chunked trailers headers.
val make :
?meth:Method.t ->
?version:Version.t ->
?headers:Header.t ->
?scheme:string ->
string ->
tmake resource is a value of t. The default values for the response, if not specified, are as follows: meth is `GET, version is `HTTP_1_1, headers is Header.empty and scheme is None. The request encoding value is determined via the Header.get_transfer_encoding function.