错误处理 – Angular 2.如何使用Observable中的重定向处理4xx错
发布时间:2020-12-17 08:33:16 所属栏目:安全 来源:网络整理
导读:我有一个叫api的服务 getItems(itemId: number): Observableany { return this.http.get(url,headers) .map(this.extractDataSingle) .catch(this.handleError)} 如果服务器以4xx响应,则调用catch部分. 这是我的handleError方法. private handleError = (err
我有一个叫api的服务
getItems(itemId: number): Observable<any> { return this.http.get(url,headers) .map(this.extractDataSingle) .catch(this.handleError) } 如果服务器以4xx响应,则调用catch部分. private handleError = (error: any) => { //Here I want to redirect to login. } 我想重定向到登录页面. 如何实现我将用户重定向到登录页面?当然,我可以更改我的订阅者以捕获错误并通过我的订阅者重定向.但我认为最好在我的服务中处理错误. 我也对如何处理4xx错误的完全不同的解决方案持开放态度. 编辑: getItems(itemId: number): Observable<any> { return this.http.get(url,headers) .map(this.extractDataSingle) .catch(this.handleError.bind(this)) } 否则您无权访问路由器.
我想这可以做你想要的:
private handleError = (error: any) => { this._router.navigate(['Login']); return Observable.of([]); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |