Files
server/server_api/server.go
T

33 lines
765 B
Go

package server_api
import (
"encoding/json"
"net/http"
"git.ohea.xyz/mediasrv/server/filesystem"
"github.com/op/go-logging"
)
var log = logging.MustGetLogger("mediasrv-server")
func SetupHTTPServer(mux *http.ServeMux, data_dir string) {
mux.HandleFunc("/server/files", func(w http.ResponseWriter, r *http.Request) {
filesHandler(data_dir, w, r)
})
}
func filesHandler(rootDir string, w http.ResponseWriter, r *http.Request) {
log.Debugf("/server/files called")
return_json, err := filesystem.GetFilesystem(rootDir)
if err != nil {
log.Errorf("Could not get filsystem data: %v", err)
return
}
data, err := json.MarshalIndent(return_json, "", "\t")
if err != nil {
log.Errorf("Could not marshal data: %v\n", err)
return
}
w.Write(data)
}