-
-
Notifications
You must be signed in to change notification settings - Fork 30.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
后端程序员表示你的登录写得太繁琐了 #3230
Comments
为什么繁琐 不就是 用户名密码获取 token 然后token 获取权限么,常规都是这么写的不然怎么写 |
简洁的做法:调用一次login就够了,后端返回该用户的基本信息和roles,而作者还要再调用一次getUserInfo |
你可以看一下他的教程里面,解释了为什么有一个getUserInfo的接口。看完再来评论是否繁琐 |
如果没有 getUserInfo 用户登陆成功刷新页面如何用 token 获取权限 list 呢 |
login直接返回roles啊,明明一个接口就OK了,非要再加个getUserInfo |
@ninki51 正常来说 Vue 项目中使用 Vuex 存储用户的基本信息 和 roles,登录成功后返回的值是存储在 Vuex 里面的。如果页面刷新,Vuex 里面的 roles 值会失效,所以需要专门写一个 getUserInfo 接口用于同步页面刷新后的 Vuex 信息。项目中用户的 Vuex 管理信息可以 在 src/store/modules/user.js 中查看。 |
@ninki51 严格的管理台页面甚至会在每个路由跳转之前都会远程的效验 roles,如果你只是在浏览器本地对 roles 管理那么很容易被篡改,最后就是如果权限变更需要重新登录才能生效 |
我也后台程序员,我觉得作者这样做更好。随便说一下,一年了,终于发布新版本了 |
其实我有个疑问,为何要将token返回给前端setToken到cookie中呢?前端set的cookie不是http-only的,假如后台XSS相关过滤做得不好,被注入脚本,js直接读取token是否可以直接拿到登录态?假如后端登录后将token直接存到Cookie中,后续自己从cookie中取回来,不需要前端主动传,这样是否会更好,因为后端可以设置http-only? 查阅了其他issue,发现已经有前辈提出了这个问题:#2549 |
麻烦close了吧 |
Feature request(新功能建议)
虽然觉得你很厉害,但一个login居然写得这么繁琐,我真是服了
The text was updated successfully, but these errors were encountered: