mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
feat(mod/dashboard): add cleaner urls for stats and browser
you can hit them at: - http://localhost:4001/etcd/mod/dashboard/stats - http://localhost:4001/etcd/mod/dashboard/browser
This commit is contained in:
parent
1d6a6d20d1
commit
05202c9ce9
@ -5,25 +5,32 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"net/http"
|
"net/http"
|
||||||
"os"
|
"os"
|
||||||
|
"path"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/coreos/etcd/mod/dashboard/resources"
|
"github.com/coreos/etcd/mod/dashboard/resources"
|
||||||
)
|
)
|
||||||
|
|
||||||
func memoryFileServer(w http.ResponseWriter, req *http.Request) {
|
func memoryFileServer(w http.ResponseWriter, req *http.Request) {
|
||||||
path := req.URL.Path
|
upath := req.URL.Path
|
||||||
if len(path) == 0 {
|
if len(upath) == 0 {
|
||||||
path = "index.html"
|
upath = "index.html"
|
||||||
}
|
}
|
||||||
|
|
||||||
b, ok := resources.File("/" + path)
|
// TODO: use the new mux to do this work
|
||||||
|
dir, file := path.Split(upath)
|
||||||
|
if file == "browser" || file == "stats" {
|
||||||
|
file = file + ".html"
|
||||||
|
}
|
||||||
|
upath = path.Join(dir, file)
|
||||||
|
b, ok := resources.File("/" + upath)
|
||||||
|
|
||||||
if ok == false {
|
if ok == false {
|
||||||
http.Error(w, path+": File not found", http.StatusNotFound)
|
http.Error(w, upath+": File not found", http.StatusNotFound)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
http.ServeContent(w, req, path, time.Time{}, bytes.NewReader(b))
|
http.ServeContent(w, req, upath, time.Time{}, bytes.NewReader(b))
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user