first commit
This commit is contained in:
51
internal/routes/v1/routes.go
Normal file
51
internal/routes/v1/routes.go
Normal file
@@ -0,0 +1,51 @@
|
||||
package v1
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"api-service/internal/handlers"
|
||||
"api-service/internal/middleware"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
swaggerFiles "github.com/swaggo/files"
|
||||
ginSwagger "github.com/swaggo/gin-swagger"
|
||||
)
|
||||
|
||||
// RegisterRoutes registers all API routes for version 1
|
||||
func RegisterRoutes() *gin.Engine {
|
||||
router := gin.New()
|
||||
|
||||
// Add middleware
|
||||
router.Use(middleware.CORSConfig())
|
||||
router.Use(middleware.ErrorHandler())
|
||||
router.Use(gin.Logger())
|
||||
router.Use(gin.Recovery())
|
||||
|
||||
// Swagger UI route
|
||||
router.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
|
||||
|
||||
// API v1 group
|
||||
v1 := router.Group("/api/v1")
|
||||
{
|
||||
// Health endpoints
|
||||
healthHandler := handlers.NewHealthHandler()
|
||||
v1.GET("/health", healthHandler.GetHealth)
|
||||
v1.GET("/", healthHandler.HelloWorld)
|
||||
|
||||
// Example endpoints
|
||||
exampleHandler := handlers.NewExampleHandler()
|
||||
v1.GET("/example", exampleHandler.GetExample)
|
||||
v1.POST("/example", exampleHandler.PostExample)
|
||||
|
||||
// WebSocket endpoint
|
||||
v1.GET("/websocket", WebSocketHandler)
|
||||
}
|
||||
|
||||
return router
|
||||
}
|
||||
|
||||
// WebSocketHandler handles WebSocket connections
|
||||
func WebSocketHandler(c *gin.Context) {
|
||||
// This will be implemented with proper WebSocket handling
|
||||
c.JSON(http.StatusOK, gin.H{"message": "WebSocket endpoint"})
|
||||
}
|
||||
Reference in New Issue
Block a user