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)
 | |
| 	}
 | |
| }
 |