let dynload_post url args
?(on_1xx = (fun (_,m) -> failwith m))
?(on_3xx = (fun (_,m) -> failwith m))
?(on_4xx = (fun (_,m) -> failwith m))
?(on_5xx = (fun (_,m) -> failwith m))
parse =
let (code, msg) as res = http_post url args in
match code / 100 with
| 0 -> AXOJs.alert "Server is offline or couldn't be reached" ;
failwith msg
| 1 -> on_1xx res
| 2 -> parse msg
| 3 -> on_3xx res
| 4 -> on_4xx res
| 5 -> on_5xx res
| _ -> AXOJs.alert ("Server sent " ^ (string_of_int code)) ; failwith msg