init
This commit is contained in:
48
network/http/web/main.go
Normal file
48
network/http/web/main.go
Normal 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"})
|
||||
}
|
||||
Reference in New Issue
Block a user