This commit is contained in:
2025-11-11 02:33:05 +01:00
parent eb2c8fea64
commit 17a671a417
21 changed files with 560 additions and 73 deletions

48
network/http/web/main.go Normal file
View File

@@ -0,0 +1,48 @@
package web
import (
"go_oxspeak_server/database"
"go_oxspeak_server/network/http/handler"
"go_oxspeak_server/network/http/middleware"
"go_oxspeak_server/network/http/web/api"
"github.com/gin-gonic/gin"
)
func CreateRouter() *gin.Engine {
router := gin.Default()
// Register middleware
router.Use(middleware.CORSMiddleware())
// Create base handler
baseHandler := handler.NewHandler(database.DB)
// Create specific handler
authHandler := NewAuthHandler(baseHandler)
serverHandler := api.NewServerHandler(baseHandler)
categoryHandler := api.NewCategoryHandler(baseHandler)
channelHandler := api.NewChannelHandler(baseHandler)
messageHandler := api.NewMessageHandler(baseHandler)
authGroup := router.Group("/auth")
{
authHandler.RegisterRoutes(authGroup)
}
apiGroup := router.Group("/api")
{
serverHandler.RegisterRoutes(apiGroup)
channelHandler.RegisterRoutes(apiGroup)
categoryHandler.RegisterRoutes(apiGroup)
messageHandler.RegisterRoutes(apiGroup)
}
router.GET("/health", healthcheck)
return router
}
func healthcheck(c *gin.Context) {
c.JSON(200, gin.H{"status": "ok"})
}