关于前后端分离项目的权限校验问题

最近做项目想用AOP自己实现权限功能,但是不知道前后端权限方面应该如何交互。
目前自己的想法是,给每个角色设置一个权限id,将权限id放入比如请求头或者token中,然后和前端交流好不同角色对应不同的页面渲染,这样可行不,大佬们,或者说说你们是怎么做的把。


回答:

权限是后端控制的。如果是基于角色的权限控制,可以把角色信息放在 JWT 里面;如果是基于权限表,数据量比较大的话,可以在后端拿用户 ID 查询(一般放在缓存层会快一些)。

前面一般控制入口,也就是菜单,所以后端可以提供一个根据用户权限返回菜单树的接口。当然如果是基于内置角色的情况,前端拿到角色自己来渲染不同的菜单也可以。但是所有页面,都假设所有用户可以访问(一般正常途径会进不到没有权限的页面),只不过,没有权限的用户拿不到数据,或者说只能拿到自己有权限的那部分数据。因为数据来源于后端,所以这个控制也是后端进行的。


回答:

两种方式,都需要接口额外返回内容

  1. 接口返回权限,前端根据权限判断是否显示内容
  2. 接口返回是否显示xxx内容,前端直接用


回答:

可以参考这个 sa-token

以上是 关于前后端分离项目的权限校验问题 的全部内容, 来源链接: utcz.com/p/944409.html

回到顶部