我正在使用Angular 4项目。我有以下场景:
一旦我使用一个用户登录,我打开另一个选项卡并使用其他用户登录,以前登录的用户的本地存储授权(Cookie)将被新登录用户的本地存储授权(Cookie)覆盖。因此,我得到了不想要的行为,这有点破坏了应用程序的功能。
如何管理它?我需要从服务器端还是从Angular进行更正?这是一个有点主观的问题,但我真的很喜欢一些例子参考或实际的实现。
发布于 2018-02-21 15:09:29
根据我的考虑,如果您将本地存储值用于记录的目的。因此,每次用户登录或单击登录按钮或登录过程检查时,此本地存储值是否存在。如果存在,则不允许打开您的登录页面。
当用户注销时,不要忘记清除本地存储值。
发布于 2018-02-21 15:36:51
在调用登录API之前,您需要这样做
if ( entered username/passward === localStorage.getItem('user')) {
// allow him to next page
} else if(localStorage.getItem('user') === undefined) {
//call login API
//and store user credentials like this
localStorage.setItem('user', 'your value');
}else {
// show error message as already logged in
}
and once current user logged out clear local storageLocalStorage.removeItem(‘用户’);
https://stackoverflow.com/questions/48899910
复制相似问题