class http_reactor :
?config_hooks:Nethttpd_kernel.http_protocol_hooks -> unit -> #http_reactor_config -> Unix.file_descr ->
http_reactorallows one to pull the next request from a connected client, and to deliver the response to the protocol engine.
method next_request :
unit -> http_reactive_request option
After receiving the request, one must either call
accept_body when the
request is acceptable and one want to reply afer evaluating the body, or
reject_body when the request can be denied without looking at the
body. One must also call
accept_body when there is not any body (it
is a no-op then). The HTTP protocol explicitly forbids to perform the request
reject_body has been invoked ("
The origin server MUST NOT
perform the requested method if it returns a final status code").
The response must be written to the Netcgi environment. Depending on
config_reactor_synch the response is immediately transmitted to the
client or at some specified time in the future (untransmitted data is buffered
in this case).
While transmitting output, the reactor is able to read the next request in the background when the limits for the pipeline size allows that.
While receiving input, the reactor is able to write untransmitted response data in the background.
It is an error to call
next_request again before the previous request
is completely processed (you can ensure this by calling
In this case the HTTP connection is immediately shut down.
None when all requests of the
connection are processed.
method close :
unit -> unit
None. It can also be called at any time to shut down the connection prematurely (this means a lingering close, and may cost some time).