请教一下前后端分离的鉴权问题

297 天前
 tjsdtc
最近在思考对于前后端分离的项目的鉴权最佳时机是什么,我们公司是比较常见的接口粒度的鉴权,请求业务接口时如果返回 401 前端就跳登录, 但这样会导致刚进入时先展示初始的页面元素然后再跳转,体验不太好,不知道其它公司都是怎么做的,有什么新思路推荐吗?
1482 次点击
所在节点    前端开发
7 条回复
l4ever
297 天前
这种情况很常见。
解决方案是路由放在后端。路由和权限数据获取到最后再展示 layout 。否则就显示个全屏的 Spin
IvanLi127
297 天前
如果是 jwt ,前端直接解析之前存的 jwt 的过期时间,不存在或过期就直接去登录界面,否则 api 401 时去登录。token 没时间的自己存。

上面一般后台用,前台建议做服务端渲染或者混合架构,这样就不存在这个问题了。
zhuoyue100
296 天前
你们现在出现 401 只有两种情况吧
1. 产品层面定义的应用长时间不操作自动退出
2. 管理在后台修改了用户权限

这两种情况都是不常见的。

如果是某些功能部分用户没有权限,这种应该是前端不会显示的
duan602728596
296 天前
“如果返回 401 前端就跳登录”可以做成“弹出登录框,登录成功后重新请求接口并返回数据”
chuck1in
295 天前
op 说的鉴权还是身份认证呢?
一般来说,身份认证用的 http status 才是 401 ,权限方面的鉴定用的是 403 这种比较多见和正规。
CodersZzz
295 天前
@chuck1in 正解
LanceXie
274 天前
最佳做法还是路由配置通过后端管理,渲染出来的路由都是有权限的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1012557

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX