Handhabung von Abgelaufenen Tokens Aus der Api-im Winkel 4

Ich benötige Hilfe bei der Handhabung von abgelaufenen Tokens in meinem angular Anwendung. Meine api ist die abgelaufene Zeit, aber mein problem ist, wenn ich vergessen habe zu melden aus meinem Winkel-Anwendung, nach einiger Zeit, ich kann immer noch Zugriff auf die homepage, aber ohne Daten. Gibt es etwas, was ich tun kann? Gibt es Bibliotheken, die verarbeiten kann? oder gibt es etwas, was ich installieren könnte? Besser, wenn ich nichts installiert werden. Hier ist mein authentication code unten? Kann ich nichts hinzufügen, kann den Ablauf und die ich nicht in der Lage, den Zugriff auf die homepage, wenn es abläuft.

auth.service.ts

 export class AuthService {
  private loggedIn = false;

  constructor(private httpClient: HttpClient) {
  }

  signinUser(email: string, password: string) {  
    const headers = new HttpHeaders() 
    .set('Content-Type', 'application/json');

    return this.httpClient
    .post(
      'http://sample.com/login', 
       JSON.stringify({ email, password }), 
       { headers: headers }
    )
    .map(
        (response: any) => {
          localStorage.setItem('auth_token', response.token);
          this.loggedIn = true;
          return response;
        });
   }

    isLoggedIn() {
      if (localStorage.getItem('auth_token')) {
        return this.loggedIn = true;
      }
    }

   logout() {
     localStorage.removeItem('auth_token');
     this.loggedIn = false;
    }
}

authguard.ts

@Injectable()
export class AuthGuard implements CanActivate {

  constructor(private router: Router, private authService: AuthService) {}

  canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {

    if (this.authService.isLoggedIn()) {
      //logged in so return true
      return true;
    }

    else {
      //not logged in so redirect to login page with the return url
      this.router.navigate(['signin'])
      return false;
      }
  }
}
Sie können erzwingen, die app zu löschen login-status beim verlassen der app.
Aber ich denke, das ist nicht, wie professionelle web-app funktioniert, richtig? Sie können immer noch Zugriff auf Ihr Konto, nachdem Sie den browser schließen.
Dies hängt von Ihrem app-Authentifizierung Strategie. Für mich, es ist merkwürdig, dass die app lässt sich immer noch angemeldet, aber API ist nicht mehr erreichbar.
was passiert bei der Abmeldung?
Meinst du, wenn ich auf den logout-button? Es Abmeldungen die app und ich werden nicht in der Lage, den Zugriff auf die homepage

InformationsquelleAutor Joseph | 2017-09-11

Schreibe einen Kommentar