vue后台页面权鉴有标准吗?

vue后台页面权鉴有标准吗?

百度了1天, 我看大概有2种方式:

  1. 登陆后请求全量的"路由和权限关系", 每次切换路由, 前端自己判断页面是否有权限.
  2. 登陆后请求当前用户的"路由和权限关系", 然后addRoute到路由中, 因为vue2没有removeRoute,所以切换用户登陆的时候刷新页面, 然后重新执行前面说的逻辑.

我现在想可不可以不请求"路由和权限关系", 打开页面就初始化全量的路由, 然后每次切换路由的时候请求接口(/auth), 传token和当前路由信息, 后端来告诉前端当前是404还是401

所以大家用的哪种或者说什么其他方式?


回答:

体验不行。假设后端接口200ms,那每次切路由就白白要多等着200ms


回答:

逻辑上好像没啥毛病,就是切换路由每次请求接口有点废网络资源,同一个用户,来回2个页面跳转,就得发同样次数鉴权请求。

补充

基于第一个回答,我想到一种极端的情况,如果在从a页面跳转到b页面,但a页面中有请求队列未完成,导致阻塞了跳转鉴权的请求,使得页面跳转的时间大大延长,所以还需要考虑请求中断取消。


回答:

你前端做校验最多也就是发不发请求,实际上即使你有权限发送请求,接口仔也还是可能会拒绝你的请求(具体到数据层面的权限),那你还不如放弃自己处理,直接交给接口处理,特别是人家修改了用户或者角色权限的那种场景,你第一种需要刷新这部分数据才能做到权限控制,第二种倒是没问题,能及时获取到系统变更,就是每次发两次,实际上有一丝丝浪费;
后端接口绝大部分都是有权限校验的(少部分接口或页面可匿名访问),人家不管你做没做检验,它都要做,那还不如自己少给自己出点bug


回答:

用的1,省事。你切换路由再去判断,说明这菜单是展示出来了,展示出来了告诉别人你没权限,多尴尬。再说权限不光路由方面,页面上按钮啥的也有权限,一开始全部获取到多好,是吧

以上是 vue后台页面权鉴有标准吗? 的全部内容, 来源链接: utcz.com/p/936968.html

回到顶部