Files
workspace/code/go-project/base-farmework/pkg/middleware/recover.go
T
2025-08-11 17:29:58 +08:00

23 lines
409 B
Go

package middleware
import (
"base-framework/pkg/router"
"log"
"net/http"
"runtime/debug"
)
func Recover() router.HandlerFunc {
return func(c *router.Context) {
defer func() {
if err := recover(); err != nil {
log.Printf("[PANIC] %v\n%s", err, debug.Stack())
c.JSON(http.StatusInternalServerError, map[string]string{
"error": "Internal Server Error",
})
}
}()
c.Next()
}
}