X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2FDEVEL%2Focaml-http%2Fexamples%2Fdump_args.ml;h=a6dcdda0e09aa9513bab623a6f70e244fafd56d6;hb=ebc089606ccbb3e9dbde142542a1f98f5020b4dd;hp=ef4630fdec715cf86fcbe304a40f4dc49af8cce1;hpb=ad1730728e7e9f64f3ba6b80940e9f190c50d6e8;p=helm.git diff --git a/helm/DEVEL/ocaml-http/examples/dump_args.ml b/helm/DEVEL/ocaml-http/examples/dump_args.ml index ef4630fde..a6dcdda0e 100644 --- a/helm/DEVEL/ocaml-http/examples/dump_args.ml +++ b/helm/DEVEL/ocaml-http/examples/dump_args.ml @@ -2,7 +2,7 @@ (* OCaml HTTP - do it yourself (fully OCaml) HTTP daemon - Copyright (C) <2002> Stefano Zacchiroli + Copyright (C) <2002-2004> Stefano Zacchiroli This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -21,31 +21,26 @@ open Printf;; -let dump_args path args = - Printf.sprintf - "PATH: %s\nARGS:\n%s" - path - (String.concat - "" - (List.map - (fun (name, value) -> sprintf "\tNAME: '%s', VALUE: '%s'\n" name value) - args)) -in -let callback path args outchan = - match path with - | "/gone" -> - Http_daemon.respond_redirect - ~location:"/foo" ~body:"REDIRECT" ~code:302 outchan - | "/error" -> - Http_daemon.respond_error ~body:"ERROR" ~code:500 outchan - | _ -> - begin - Http_daemon.send_basic_headers ~code:200 outchan; - Http_daemon.send_CRLF outchan; - output_string outchan (dump_args path args) - end +let callback req outchan = + Http_daemon.send_basic_headers ~code:(`Code 200) outchan; + Http_daemon.send_CRLF outchan; + let str = + (sprintf "request path = %s\n" req#path) ^ + (sprintf "request GET params = %s\n" + (String.concat ";" + (List.map (fun (h,v) -> String.concat "=" [h;v]) req#params_GET))) ^ + (sprintf "request POST params = %s\n" + (String.concat ";" + (List.map (fun (h,v) -> String.concat "=" [h;v]) req#params_POST))) ^ + (sprintf "request ALL params = %s\n" + (String.concat ";" + (List.map (fun (h,v) -> String.concat "=" [h;v]) req#params))) ^ + (sprintf "request BODY = '%s'\n" req#body) + in + output_string outchan str; + prerr_endline str in print_endline "Starting custom Http_daemon ..."; flush stdout; -Http_daemon.start ~port:9999 callback +Http_daemon.start' ~port:9999 callback