diff options
| -rw-r--r-- | handlers.go | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/handlers.go b/handlers.go index 4db3879..1ca96d8 100644 --- a/handlers.go +++ b/handlers.go @@ -1,13 +1,25 @@ package main import ( + "embed" "fmt" + "io/fs" + "log" "net/http" ) +//go:embed frontend/public +var frontendEmbed embed.FS + func init() { - router.Handle("/", http.FileServer(http.Dir("frontend/public"))) router.HandleFunc("/api/version", version) + + // frontend must come last to make sure /api takes precedence + frontend, err := fs.Sub(frontendEmbed, "frontend/public") + if err != nil { + log.Fatalf("No embedded frontend: %v", err) + } + router.PathPrefix("/").Handler(http.FileServerFS(frontend)) } func version(w http.ResponseWriter, r *http.Request) { |
