我正在检查记录的用户令牌,如果身份验证失败(返回401错误)我想重定向到登录。我遇到的问题是当我犯错误时抓住router.navigate不起作用。
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);
};
答案 0 :(得分:0)
只需导入RxJS catch Extension。
import 'rxjs/add/operator/catch';