add recover middelware

This commit is contained in:
Pedro Pérez 2025-05-09 18:24:10 +02:00
parent ec78f9f77d
commit 695ea0a704

View File

@ -48,3 +48,17 @@ func (e *Engine) RequestIdMiddleware() Middleware {
}) })
} }
} }
func (e *Engine) RecoverMiddleware() Middleware {
return func(next http.Handler) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
defer func() {
if r := recover(); r != nil {
slog.Error("panic", "error", r)
http.Error(w, "Internal Server Error", http.StatusInternalServerError)
}
}()
next.ServeHTTP(w, r)
})
}
}