12345678910111213141516171819202122232425262728293031 |
- package middleware
- import (
- "fmt"
- "gin-vue-admin/controller/servers"
- "gin-vue-admin/model/sysModel"
- "github.com/gin-gonic/gin"
- )
- func CasbinHandler() gin.HandlerFunc {
- return func(c *gin.Context) {
- claims, _ := c.Get("claims")
- waitUse := claims.(*CustomClaims)
-
- obj := c.Request.URL.RequestURI()
-
- act := c.Request.Method
-
- sub := waitUse.AuthorityId
- e := sysModel.Casbin()
-
- if e.Enforce(sub, obj, act) {
- c.Next()
- } else {
- servers.ReportFormat(c, false, fmt.Sprintf("权限不足"), gin.H{})
- c.Abort()
- return
- }
- }
- }
|