diff --git a/src/app/helper/token.interceptor.ts b/src/app/helper/token.interceptor.ts index 2fc18e9..e76a61f 100644 --- a/src/app/helper/token.interceptor.ts +++ b/src/app/helper/token.interceptor.ts @@ -29,12 +29,19 @@ export class TokenInterceptor implements HttpInterceptor { errorMessage = `Error: ${error.error.message}`; } else { //server error - /*if (error.status === 400){ - this.authService.logout(); - errorMessage = "Die aktuelle Sitzung ist abgelaufen. Bitte loggen sie sich erneut ein." - this.router.navigate(["/login"], { queryParams: { returnUrl: this.router.routerState.snapshot.url } }); - } else*/ - console.log(JSON.stringify(error.message) + JSON.stringify(error.error)); + if (error.status === 400){ + switch (error.error.message) { + case "Invalid refresh token!": + this.authService.logout(); + errorMessage = "Die aktuelle Sitzung ist abgelaufen. Bitte loggen sie sich erneut ein." + this.router.navigate(["/login"], { queryParams: { returnUrl: this.router.routerState.snapshot.url } }); + break; + + default: + break; + } + + } else if (error.status === 401) { var urlSplit : string[] = error.url.split("/"); if (urlSplit[3] === "users" && urlSplit[5] === "update"){ // Allow user pw updates to be processed correctly diff --git a/src/app/pages/profile/profile.component.ts b/src/app/pages/profile/profile.component.ts index 3ea5a54..f654bbe 100644 --- a/src/app/pages/profile/profile.component.ts +++ b/src/app/pages/profile/profile.component.ts @@ -61,11 +61,7 @@ export class ProfileComponent implements OnInit { user.password = this.passwordNew.value; this.loading = true; - this.authService.refreshToken().subscribe( - () => { - this.userService - .updateUser(user) - .subscribe( + this.userService.updateUser(user).subscribe( data => { this.snackBar.openSnackBar("Das Passwort wurde erfolgreich aktualisiert", "Ok"); this.password.reset(); @@ -75,8 +71,6 @@ export class ProfileComponent implements OnInit { .add(() => { this.loading = false; }); - } - ) } }