Выйдите из системы и завершите сеанс администратором в Angular. - PullRequest
0 голосов
/ 17 апреля 2019

Мне нужно, чтобы в моем приложении Angular была функция, позволяющая администратору выходить из системы и завершать сеанс пользователя, вошедшего в систему.Мой бэкэнд основан на спокойном API Spring Boot с настраиваемой аутентификацией.Как вручную выйти из системы вошедшего в систему пользователя и завершить его сеанс при использовании Angular?

У меня есть контроллер, который меняет флаг в столбце 'logged_in' в таблице пользователей в базе данных.Однако это не выводит пользователя из системы и не завершает его сеанс по желанию, вместо этого выходит из системы текущий пользователь (admin) вместо другого пользователя, вошедшего в систему.

Мой угловой код, в котором я выполняю вызов API:

    this.apiService.LogUserOut(this.userProfile).subscribe(res => {
            this.blockUI.stop();
            this.response = res;
            // end user session

this.authService.logout(this.userProfile.username).subscribe(data => {});
            this.router.navigate(['/auth']);
            this.globalService.setAuth(false);
            localStorage.removeItem('otc');
 });

Конечная точка контроллера:

// logout a logged-in user
@PostMapping(value = "/sysusers/logUserOut")
public ResponseEntity<?> LogUserOut(@RequestBody User user) throws 
 Exception {
    System.out.println("User logged out: " + user.getUsername());
    userService.SetUserLoggedOut(user.getUsername());
    return new ResponseEntity<>(new 
 CustomResponse(CustomResponse.APIV, 201, true, "You have logged the user 
out"), HttpStatus.OK);
} 

Я ожидаю, что система отфильтрует и проверит, вошел ли пользователь в систему так, что, когда администратор выходит из системы, система можетуведомить, в противном случае система должна выйти из системы.Я знаю, как выйти из системы текущего пользователя, но не знаю, как принудительно выйти из системы других пользователей, поэтому некоторая помощь по этому вопросу будет принята с благодарностью.Спасибо.

...