modelRT/router/router.go

30 lines
806 B
Go
Raw Normal View History

// Package router provides router config
2025-07-31 10:31:26 +08:00
package router
import (
"time"
"modelRT/middleware"
"github.com/gin-gonic/gin"
)
var measurementLimiter *middleware.Limiter
2025-07-31 10:31:26 +08:00
func init() {
// set a rate limiter to allow a maximum of 2 requests per second for measurement group api
measurementLimiter = middleware.NewLimiter(2, 1*time.Second)
2025-07-31 10:31:26 +08:00
}
// RegisterRoutes define func of register all routes
2025-09-12 17:12:02 +08:00
func RegisterRoutes(engine *gin.Engine, clientToken string) {
2025-07-31 10:31:26 +08:00
// use global middlewares
engine.Use(middleware.StartTrace())
2025-07-31 10:31:26 +08:00
routeGroup := engine.Group("")
registerDiagramRoutes(routeGroup)
registerAttrRoutes(routeGroup)
registerMeasurementRoutes(routeGroup, middleware.SetTokenMiddleware(clientToken), measurementLimiter.Middleware)
2025-10-24 16:52:14 +08:00
registerDataRoutes(routeGroup)
2025-11-03 17:35:03 +08:00
registerMonitorRoutes(routeGroup)
2025-07-31 10:31:26 +08:00
}