From ab3b255b925e6fc4927856e7b0d4c8d32ff37273 Mon Sep 17 00:00:00 2001 From: Tim Wundenberg Date: Wed, 18 Sep 2024 21:28:44 +0200 Subject: [PATCH] fix: restructure handler yet again #181 --- handler/auth.go | 9 +-------- handler/default.go | 1 + handler/workout.go | 10 +--------- 3 files changed, 3 insertions(+), 17 deletions(-) diff --git a/handler/auth.go b/handler/auth.go index 8a449b0..71fa20b 100644 --- a/handler/auth.go +++ b/handler/auth.go @@ -1,7 +1,6 @@ package handler import ( - "log/slog" "me-fit/service" "database/sql" @@ -9,7 +8,6 @@ import ( ) func authUi(db *sql.DB) http.Handler { - router := http.NewServeMux() router.Handle("/auth/signin", service.HandleSignInPage(db)) @@ -21,15 +19,10 @@ func authUi(db *sql.DB) http.Handler { router.Handle("/auth/reset-password", service.HandleResetPasswordPage(db)) router.Handle("/", service.HandleIndexAnd404(db)) - // return router - return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - slog.Warn(r.URL.Path) - router.ServeHTTP(w, r) - }) + return router } func authApi(db *sql.DB) http.Handler { - router := http.NewServeMux() router.Handle("/api/auth/signup", service.HandleSignUpComp(db)) diff --git a/handler/default.go b/handler/default.go index 73bb7e4..d4194b9 100644 --- a/handler/default.go +++ b/handler/default.go @@ -21,6 +21,7 @@ func GetHandler(db *sql.DB) http.Handler { router.Handle("/workout", auth(db, workoutUi(db))) router.Handle("/api/workout", auth(db, workoutApi(db))) + // Needed a second time with trailing slash, otherwise either /api/workout or /api/workout/{id} does not match router.Handle("/api/workout/", auth(db, workoutApi(db))) return middleware.Logging( diff --git a/handler/workout.go b/handler/workout.go index 411e8c5..ed3672e 100644 --- a/handler/workout.go +++ b/handler/workout.go @@ -1,7 +1,6 @@ package handler import ( - "log/slog" "me-fit/service" "database/sql" @@ -9,11 +8,9 @@ import ( ) func workoutUi(db *sql.DB) http.Handler { - router := http.NewServeMux() router.Handle("/workout", service.HandleWorkoutPage(db)) - router.Handle("/", service.HandleIndexAnd404(db)) return router } @@ -21,14 +18,9 @@ func workoutUi(db *sql.DB) http.Handler { func workoutApi(db *sql.DB) http.Handler { router := http.NewServeMux() - // root = "/api/workout/" router.Handle("POST /api/workout", service.HandleWorkoutNewComp(db)) router.Handle("GET /api/workout", service.HandleWorkoutGetComp(db)) router.Handle("DELETE /api/workout/{id}", service.HandleWorkoutDeleteComp(db)) - // return router - return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - slog.Warn(r.URL.Path) - router.ServeHTTP(w, r) - }) + return router }