1
0
forked from MTSR/mapserver
mapserver/web/serve.go
NatureFreshMilk 8ed4e4be4a config api
2019-01-18 11:09:16 +01:00

33 lines
677 B
Go

package web
import (
"github.com/sirupsen/logrus"
"mapserver/app"
"mapserver/vfs"
"net/http"
"strconv"
)
func Serve(ctx *app.App) {
fields := logrus.Fields{
"port": ctx.Config.Port,
"webdev": ctx.Config.Webdev,
}
logrus.WithFields(fields).Info("Starting http server")
mux := http.NewServeMux()
mux.Handle("/", http.FileServer(vfs.FS(ctx.Config.Webdev)))
mux.Handle("/api/tile/", &Tiles{ctx: ctx})
mux.Handle("/api/config", &ConfigHandler{ctx: ctx})
if ctx.Config.WebApi.EnableMapblock {
mux.Handle("/api/mapblock/", &MapblockHandler{ctx: ctx})
}
err := http.ListenAndServe(":"+strconv.Itoa(ctx.Config.Port), mux)
if err != nil {
panic(err)
}
}