mirror of
https://github.com/astaxie/beego.git
synced 2024-11-22 13:00:54 +00:00
beego:admin add print method
This commit is contained in:
parent
117904be73
commit
e38a23b30e
24
admin.go
24
admin.go
@ -121,6 +121,10 @@ func listConf(rw http.ResponseWriter, r *http.Request) {
|
||||
fmt.Fprintln(rw, "AdminHttpPort:", AdminHttpPort)
|
||||
case "router":
|
||||
fmt.Fprintln(rw, "Print all router infomation:")
|
||||
for method, t := range BeeApp.Handlers.routers {
|
||||
fmt.Fprintln(rw, "Method:", method)
|
||||
printTree(rw, t)
|
||||
}
|
||||
// @todo print routers
|
||||
case "filter":
|
||||
fmt.Fprintln(rw, "Print all filter infomation:")
|
||||
@ -163,6 +167,26 @@ func listConf(rw http.ResponseWriter, r *http.Request) {
|
||||
}
|
||||
}
|
||||
|
||||
func printTree(rw http.ResponseWriter, t *Tree) {
|
||||
for _, tr := range t.fixrouters {
|
||||
printTree(rw, tr)
|
||||
}
|
||||
if t.wildcard != nil {
|
||||
printTree(rw, t.wildcard)
|
||||
}
|
||||
for _, l := range t.leaves {
|
||||
if v, ok := l.runObject.(*controllerInfo); ok {
|
||||
if v.routerType == routerTypeBeego {
|
||||
fmt.Fprintln(rw, v.pattern, v.methods, v.controllerType.Name())
|
||||
} else if v.routerType == routerTypeRESTFul {
|
||||
fmt.Fprintln(rw, v.pattern, v.methods)
|
||||
} else if v.routerType == routerTypeHandler {
|
||||
fmt.Fprintln(rw, v.pattern, "handler")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ProfIndex is a http.Handler for showing profile command.
|
||||
// it's in url pattern "/prof" in admin module.
|
||||
func profIndex(rw http.ResponseWriter, r *http.Request) {
|
||||
|
Loading…
Reference in New Issue
Block a user