42 lines
945 B
Go
42 lines
945 B
Go
package router
|
|
|
|
import (
|
|
"github.com/gin-gonic/gin"
|
|
"hy2xs-admin/frontend"
|
|
"hy2xs-admin/middleware"
|
|
"strings"
|
|
)
|
|
|
|
func Router(router *gin.Engine, huiWebContext *string) {
|
|
// global context
|
|
relativePath := "/"
|
|
if huiWebContext != nil && strings.HasPrefix(*huiWebContext, "/") {
|
|
relativePath = *huiWebContext
|
|
}
|
|
globalGroup := router.Group(relativePath)
|
|
{
|
|
globalGroup.Use(middleware.FilterHandler(), middleware.LogHandler(), middleware.RateLimiterHandler())
|
|
|
|
frontend.InitFrontend(router, relativePath)
|
|
|
|
authApi := globalGroup.Group("/hui")
|
|
{
|
|
initAuthRouter(authApi)
|
|
initHysteria2AuthRouter(authApi)
|
|
}
|
|
|
|
globalGroup.Use(middleware.JWTHandler())
|
|
|
|
globalGroup.Use(middleware.AdminHandler())
|
|
|
|
huiAdminApi := globalGroup.Group("/hui")
|
|
{
|
|
initAccountAdminRouter(huiAdminApi)
|
|
initConfigRouter(huiAdminApi)
|
|
initHysteria2Router(huiAdminApi)
|
|
initLogRouter(huiAdminApi)
|
|
initMonitorRouter(huiAdminApi)
|
|
}
|
|
}
|
|
}
|