From 3e138089dd5388da1df8d7f4bb30b8cc43013f28 Mon Sep 17 00:00:00 2001 From: Hayden Hargreaves Date: Sat, 15 Nov 2025 23:59:22 -0700 Subject: [PATCH] (DOC): Added some optmization notes --- internal/app/server/authentication.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/internal/app/server/authentication.go b/internal/app/server/authentication.go index f3cc4e8..edb791f 100644 --- a/internal/app/server/authentication.go +++ b/internal/app/server/authentication.go @@ -12,6 +12,11 @@ type AuthenticatedFunc func(ctx *gin.Context, user *domain.User) // withAuthenticatedUser is a helper to run a handler only if user is authenticated. Otherwise // the function will return an error with a 401 status. +// +// BUG: This is probably not very effecient, since we hit the DB on every single protected request. +// If this ends up being a bottle neck we could simply hit the context for the userId, since +// that is usually all we need...Or maybe have two methods, for those that need the whole user +// and those that just need the ID. func (s *Server) withAuthenticatedUser(ctx *gin.Context, handler AuthenticatedFunc) { user := s.deps.UserService.GetAuthenicatedUser(ctx) if user == nil { @@ -24,6 +29,7 @@ func (s *Server) withAuthenticatedUser(ctx *gin.Context, handler AuthenticatedFu handler(ctx, user) } + // getUserId retrieves the userId from the context and returns a pointer to it. A nil // pointer can be returned and will if the userId does not exist. func getUserId(ctx *gin.Context) *int {