मैं उपयोगकर्ताओं को प्रमाणीकृत करने के लिए जेडब्ल्यूटी का उपयोग कर रहा हूं। मेरे कोणीय 2 ऐप में राउट्स का हिस्सा CanActivate Guard द्वारा संरक्षित है जो लॉग इन पेज पर रीडायरेक्ट करेगा यदि उपयोगकर्ता लॉग इन नहीं है। अब मैं लॉगआउट बटन कार्यान्वित कर रहा हूं और लॉगिन पेज पर रीडायरेक्ट करना चाहता हूं। मैं केवल तभी रीडायरेक्ट करना चाहता हूं यदि वर्तमान रूट गैर लॉग इन उपयोगकर्ताओं (जैसे खाता पृष्ठ) पर दिखाई न दे। यदि उपयोगकर्ता होम पेज में उदाहरण के लिए है तो मैं लॉगिन पेज पर रीडायरेक्ट नहीं करना चाहता हूं।कोणीय 2: ट्रिगर वर्तमान मार्ग गार्ड - लॉगआउट कार्रवाई संभाल
यह सही होगा अगर मैं जांच सकता हूं कि वर्तमान मार्ग सुरक्षित है या नहीं, तो यह गार्ड मौजूद है या नहीं। ऐसा करना संभव है?
गार्ड:
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;
}