1.采用前后端分离的开发模式. 前后台并行开发. 后台提供接口,angular去调用。
2.网站有访问权限, 必须要登录才能访问某些页面。
3.网站头部,根据登录是否来呈现不同的信息. 比如登录后:欢迎 (xx用户名).
4.后台每个接口都判断了用户是否登录.
5.我的做法: 用户登录后. 我会在sessionStorage里面存一个key. 然后在路由文件里$stateChangeSuccess判断是否有这个key,没有的话就$state.go('login')去登录。
现在的问题是.sessionStorage不能浏览器多个标签共存.就是用户其实已经登录了,然后用新标签打开页面.这时候$stateChangeSuccess判断没有这个key就跳到登录login页面去了.
sessionStorage不能多标签共存. localStorage又必须要手动清除...
大家通常是怎么做的啊?
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
cookie啊,这不是烂大街的技术了吗?其实localStorage也挺不错的。不喜欢sessionStorage,还不如cookie呢。
cookie不能标识是否登录,后端session与前端cookie匹配认为是一个会话,没登录也有session退出登录也有session,而且session有超时,所以无法用session/cookie去判断。你这个只是调数据时判断是否登录就可以了,写个全局xhr事件/全决ajax拦截器,如果后端返回未登录,你就跳转到登录页面。至于显示用户信息,那后端提供给接口就可以了。