Tiny_httpd_wsSourceWebsockets for Tiny_httpd.
This sub-library (tiny_httpd.ws) exports a small implementation for a websocket server. It has no additional dependencies.
Synchronization primitive used to allow both the reader to reply to "ping", and the handler to send messages, without stepping on each other's toes.
type handler =
unit Tiny_httpd_core.Request.t ->
Tiny_httpd_core.IO.Input.t ->
Tiny_httpd_core.IO.Output.t ->
unitWebsocket handler
val upgrade :
?with_lock:With_lock.t ->
Tiny_httpd_core.IO.Input.t ->
Tiny_httpd_core.IO.Output.t ->
Tiny_httpd_core.IO.Input.t * Tiny_httpd_core.IO.Output.tUpgrade a byte stream to the websocket framing protocol.
Exception that can be raised from IOs inside the handler, when the connection is closed from underneath.
val add_route_handler :
?accept:(unit Tiny_httpd_core.Request.t -> (unit, int * string) result) ->
?accept_ws_protocol:(string -> bool) ->
?middlewares:Tiny_httpd_core.Server.Head_middleware.t list ->
?with_lock:With_lock.builder ->
Tiny_httpd_core.Server.t ->
(Tiny_httpd_core.Server.upgrade_handler,
Tiny_httpd_core.Server.upgrade_handler)
Tiny_httpd_core.Route.t ->
handler ->
unitAdd a route handler for a websocket endpoint.