/
yaws_showarg.erl
92 lines (86 loc) · 3.2 KB
/
yaws_showarg.erl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
-module(yaws_showarg).
-export([out/1]).
-include("../include/yaws_api.hrl").
f(Fmt, Args) ->
io_lib:format(Fmt, Args).
out(ARG) ->
[
{html,
"<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">
<html>
<head>
<style type=\"text/css\">
table {border-collapse: collapse; }
td, th { border: 1px solid #000000; vertical-align: baseline; }
</style>
</head>
"},
{ehtml,
[
{body,[],
[
{h4,[], "ARG information"},
{table,[],
[
{thead,[],
[
{tr,[],
[
{th,[],"record field"},{th,[],"value"}
]}
]},
{tbody,[],
[
{tr,[],
[ {td,[],"clisock"},
{td,[],f("~p",[ARG#arg.clisock])} ]},
{tr,[], [ {td,[],"client_ip_port"},
{td,[],f("~p",[ARG#arg.client_ip_port])} ]},
{tr,[], [ {td,[],"headers"},
{td,[],f("(see below)",[])} ]},
{tr,[], [ {td,[],"req"},
{td,[],f("~p",[ARG#arg.req])} ]},
{tr,[], [ {td,[],"clidata"},
{td,[],f("~p",[ARG#arg.clidata])} ]},
{tr,[], [ {td,[],"server_path"},
{td,[],f("~p",[ARG#arg.server_path])} ]},
{tr,[], [ {td,[],"querydata"},
{td,[],f("~p",[ARG#arg.querydata])} ]},
{tr,[], [ {td,[],"appmoddata (deprecated)"},
{td,[],f("~p",[ARG#arg.appmoddata])} ]},
{tr,[], [ {td,[],"docroot"},
{td,[],f("~p",[ARG#arg.docroot])} ]},
{tr,[], [ {td,[],"docroot_mount"},
{td,[],f("~p",[ARG#arg.docroot_mount])} ]},
{tr,[], [ {td,[],"fullpath"},
{td,[],f("~p",[ARG#arg.fullpath])} ]},
{tr,[], [ {td,[],"cont"},
{td,[],f("~p",[ARG#arg.cont])} ]},
{tr,[], [ {td,[],"state"},
{td,[],f("~p",[ARG#arg.state])} ]},
{tr,[], [ {td,[],"pid"},
{td,[],f("~p",[ARG#arg.pid])} ]},
{tr,[], [ {td,[],"opaque"},
{td,[],yaws_api:htmlize(f("~p",[ARG#arg.opaque]))} ]},
{tr,[], [ {td,[],"appmod_prepath (deprecated)"},
{td,[],f("~p",[ARG#arg.appmod_prepath])} ]},
{tr,[], [ {td,[],"prepath"},
{td,[],f("~p",[ARG#arg.prepath])} ]},
{tr,[], [ {td,[],"pathinfo"},
{td,[],f("~p",[ARG#arg.pathinfo])} ]}
]}
]},
{h4,[], "headers"},
{pre,[], f("~p",[yaws_api:reformat_header(ARG#arg.headers)])},
{hr,[],[]},
{h4,[], "raw ARG"},
{pre,[], yaws_api:htmlize(f("~p", [ARG]))},
{hr,[],[]}
]}
]
},
{html,
"
</html>
"}
].