mirror of
https://github.com/c-cube/tiny_httpd.git
synced 2025-12-06 11:15:35 -05:00
feat(server-sent): add a close() function
This commit is contained in:
parent
b5269f5b05
commit
89344f46f0
2 changed files with 8 additions and 1 deletions
|
|
@ -801,6 +801,7 @@ module type SERVER_SENT_GENERATOR = sig
|
|||
?retry:string ->
|
||||
data:string ->
|
||||
unit -> unit
|
||||
val close : unit -> unit
|
||||
end
|
||||
type server_sent_generator = (module SERVER_SENT_GENERATOR)
|
||||
|
||||
|
|
@ -940,8 +941,10 @@ let add_route_server_sent_handler ?accept self route f =
|
|||
send_response_idempotent_()
|
||||
)
|
||||
let send_event = send_event
|
||||
let close () = raise Exit
|
||||
end in
|
||||
f req (module SSG : SERVER_SENT_GENERATOR);
|
||||
try f req (module SSG : SERVER_SENT_GENERATOR);
|
||||
with Exit -> close_out oc
|
||||
in
|
||||
add_route_handler_ self ?accept ~meth:`GET route ~tr_req f
|
||||
|
||||
|
|
|
|||
|
|
@ -595,6 +595,10 @@ module type SERVER_SENT_GENERATOR = sig
|
|||
unit -> unit
|
||||
(** Send an event from the server.
|
||||
If data is a multiline string, it will be sent on separate "data:" lines. *)
|
||||
|
||||
val close : unit -> unit
|
||||
(** Close connection.
|
||||
@since 0.11 *)
|
||||
end
|
||||
|
||||
type server_sent_generator = (module SERVER_SENT_GENERATOR)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue