Kullanıcıları doğrulamak için JWT kullanıyorum. Benim angular2 uygulamasındaki routs'un bir parçası, kullanıcı oturum açmamışsa giriş sayfasına yönlendirecek olan CanActivate Guard tarafından korunmaktadır. Şimdi oturum kapatma düğmesine başvuruyorum ve giriş sayfasına yönlendirmek istiyorum. Yalnızca geçerli rota, oturum açmamış kullanıcılar (ör. Hesap sayfası) görünmüyorsa yönlendirmek istiyorum. Kullanıcı örneğin ana sayfada ise, giriş sayfasına yönlendirmek istemiyorum.Angular2: Geçerli rota korumalarını tetikle - oturum kapatma eylemini gerçekleştir
Eğer mevcut rotada korumanın olup olmadığını kontrol edip eğer varsa bu korumayı tetiklerseniz mükemmel olur. Bunu yapmak mümkün mü?
Guard: tüm rota bekçi gerekli sayfalar için
public canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {
if (this.loginService.getCurrentUserName()) {
// logged in so return true
return true;
}
// not logged in so redirect to login page with the return url
this.router.navigate(['/login'], { queryParams: { returnUrl: state.url }});
return false;
}