角2 HTTP抓路由器导航不工作

角2 HTTP抓路由器导航不工作

问题描述:

我检查用户的令牌登录,如果认证失败(返回401错误)我想重定向到登录。我遇到的问题是,当我犯了错误赶上router.navigate不起作用。角2 HTTP抓路由器导航不工作

constructor(private http: Http , private router : Router) 


authUser(){ 
     return this.http.get(this.baseEndPoint+'/auth/user',Helpers.requestAuthOptions()) 
      .map((response) => response.json()) 
      .catch(this.handleError.bind(this)); 
    } 

public handleError = (error) => { 
     this.router.navigate(['/login']); 
     console.log('Hello!');//Hello appears in my console 
     return Observable.throw(error); 
    }; 
+1

通常尝试为'.catch(this.handleError);' – SaiUnique

+0

你这里得到任何错误? –

只要导入RxJS catch扩展。 import 'rxjs/add/operator/catch';

How to catch exception correctly from http.request()?