Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- export const routes: Routes = [
- { path: '', component: LoginComponent },
- { path: 'login', component: LoginComponent },
- { path: 'home', component: HomeComponent, canActivate: [AuthGuard] },
- { path: '**', component: LoginComponent },
- ];
- @Injectable()
- export class AuthGuard implements CanActivate {
- response: ResponseInterface;
- constructor(private router: Router, private localStorage: LocalStorageService,
- private services: MyService) { }
- canActivate() {
- let token = String(this.localStorage.get('token'));
- if (token != null) {
- this.services.keepAlive(token).subscribe(
- response => this.response = response,
- error => alert(error),
- () => {
- if (this.response.status == 'OK') {
- console.log("response OK");
- return true;
- } else {
- console.log("response KO");
- this.router.navigate(['/login']);
- return false;
- }
- }
- )
- } else {
- this.router.navigate(['/login']);
- return false;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement