in src/psearch/serving/internal/api/routes.go [26:49]
func SetupRouter(router *gin.Engine, cfg *config.Config) {
// Setup CORS middleware
router.Use(cors.New(cors.Config{
AllowOrigins: []string{"*"}, // For production, restrict this to specific domains
AllowMethods: []string{"GET", "POST", "OPTIONS"},
AllowHeaders: []string{"Origin", "Content-Type", "Accept"},
ExposeHeaders: []string{"Content-Length"},
AllowCredentials: true,
MaxAge: 86400, // 24 hours
}))
// Setup logging middleware
router.Use(LoggerMiddleware())
// Create controller instance
controller, err := NewController(cfg)
if err != nil {
panic(err)
}
// Register routes
router.GET("/health", controller.HealthCheck)
router.POST("/search", controller.Search)
}