后台权限控制都是通过填写路由来达到控制权限,而前端和后端的路由又不同,
思路:
page路径由前端验证;
api路径由后端验证;
方案1
角色路由权限表 新增字段路由类型
,包含的页面(page)
和接口(api)
两种类型,所以可以增加一个路由类型
的字段来区分;
<?php
namespace api\enums;
//路由类型
class RouteType extends Enum
{
const PAGE = 1;//页面
const API = 5;//接口
}
后台菜单栏的页面就是页面(page)类型的路由,而页面里面的操作部分就是接口(api)类型的路由
前端显示菜单时先通过api接口获得当前用户应有的页面路径
方案2
新增菜单栏数据表(menu),设置后台的所有菜单栏页面
角色-路由权限表 不需要路由类型
字段
前端通过api获取全部菜单栏和当前用户应有的权限,前后匹配上的路由菜单才显示