diff --git a/internal/router/handler.go b/internal/router/handler.go new file mode 100644 index 0000000..def4b79 --- /dev/null +++ b/internal/router/handler.go @@ -0,0 +1,29 @@ +package router + +import ( + "github.com/gin-gonic/gin" + log "github.com/sirupsen/logrus" + "net/http" +) + +func SetRouter(mode string) *gin.Engine { + if mode == "release" { + gin.SetMode(gin.ReleaseMode) + } else { + gin.SetMode(gin.DebugMode) + } + + engine := gin.Default() + if mode == "release" { + err := engine.SetTrustedProxies([]string{"172.20.0.0/16"}) + if err != nil { + log.WithError(err).Error("Router | Set proxies failed") + } + } + + engine.NoRoute(func(c *gin.Context) { + c.Status(http.StatusForbidden) + }) + + return engine +}