- match i with
- | 0 -> output_string outchan "1"
- | x when x > 0 ->
- let data =
- Http_user_agent.get (sprintf "http://127.0.0.1/foo?x=%d" (x - 1))
- in
- output_string outchan (sprintf "%s %d" data x)
- | _ -> assert false
+ let body =
+ match i with
+ | 0 -> "0"
+ | x when x > 0 ->
+ let data =
+ Http_user_agent.get (sprintf "http://127.0.0.1:%d/foo?x=%d"
+ port (x - 1))
+ in
+ sprintf "%s %d" data x
+ | _ -> assert false
+ in
+ Http_daemon.respond ~code:(`Code 200) ~body outchan;
+ close_out outchan (* Http_user_agent relies on EOF, not Content-Length *)