package middleware import ( "go-admin/common/actions" "github.com/gin-gonic/gin" "github.com/go-admin-team/go-admin-core/sdk" jwt "github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth" ) const ( JwtTokenCheck string = "JwtToken" RoleCheck string = "AuthCheckRole" PermissionCheck string = "PermissionAction" ) func InitMiddleware(r *gin.Engine) { // r.Use(DemoEvn()) // 数据库链接 r.Use(WithContextDb) // olap数据库连接 r.Use(WithContextOlapDB) // prometheus r.Use(WithPrometheus) // 日志处理 r.Use(LoggerToFile()) // 自定义错误处理 r.Use(CustomError) // NoCache is a middleware function that appends headers r.Use(NoCache) // 跨域处理 r.Use(Options) // Secure is a middleware function that appends security r.Use(Secure) // 链路追踪 // r.Use(middleware.Trace()) sdk.Runtime.SetMiddleware(JwtTokenCheck, (*jwt.GinJWTMiddleware).MiddlewareFunc) sdk.Runtime.SetMiddleware(RoleCheck, AuthCheckRole()) sdk.Runtime.SetMiddleware(PermissionCheck, actions.PermissionAction()) }