43 lines
		
	
	
		
			992 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			992 B
		
	
	
	
		
			Go
		
	
	
	
	
	
package router
 | 
						|
 | 
						|
import (
 | 
						|
	"github.com/gin-gonic/gin"
 | 
						|
	jwt "github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth"
 | 
						|
)
 | 
						|
 | 
						|
var (
 | 
						|
	routerNoCheckRole = make([]func(*gin.RouterGroup), 0)
 | 
						|
	routerCheckRole   = make([]func(v1 *gin.RouterGroup, authMiddleware *jwt.GinJWTMiddleware), 0)
 | 
						|
)
 | 
						|
 | 
						|
// initRouter 路由示例
 | 
						|
func initRouter(r *gin.Engine, authMiddleware *jwt.GinJWTMiddleware) *gin.Engine {
 | 
						|
 | 
						|
	// 无需认证的路由
 | 
						|
	noCheckRoleRouter(r)
 | 
						|
	// 需要认证的路由
 | 
						|
	checkRoleRouter(r, authMiddleware)
 | 
						|
 | 
						|
	return r
 | 
						|
}
 | 
						|
 | 
						|
// noCheckRoleRouter 无需认证的路由示例
 | 
						|
func noCheckRoleRouter(r *gin.Engine) {
 | 
						|
	// 可根据业务需求来设置接口版本
 | 
						|
	v1 := r.Group("/api/v1")
 | 
						|
 | 
						|
	for _, f := range routerNoCheckRole {
 | 
						|
		f(v1)
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
// checkRoleRouter 需要认证的路由示例
 | 
						|
func checkRoleRouter(r *gin.Engine, authMiddleware *jwt.GinJWTMiddleware) {
 | 
						|
	// 可根据业务需求来设置接口版本
 | 
						|
	v1 := r.Group("/api/v1")
 | 
						|
 | 
						|
	for _, f := range routerCheckRole {
 | 
						|
		f(v1, authMiddleware)
 | 
						|
	}
 | 
						|
}
 |