1
HTTP에 일부 기능을 추가하려고합니다. 사용자가 403을 얻으면 사용자 정보가 제거되고 로그인으로 리디렉션됩니다. AuthHttp 예제는 아래에서 볼 수 있습니다.서비스 내 서비스 사용
EXCEPTION: this.authService is undefined
내가 서비스 내에서 서비스를 사용하는 것을 시도하고 있기 때문에 나는 주위 얻을하는 방법을 알고하지 않습니다
문제가@Injectable()
export class AuthHttp {
constructor(
private http: Http,
private router: Router,
private authService: AuthService
) { }
get(url: string, options?: RequestOptionsArgs): Observable<any> {
return this.http.get(url, options)
.catch(this.errorHandler);
}
errorHandler(error: any): Observable<any> {
if (error.status === 403) {
console.error('TOKEN EXPIRED!');
this.authService.logout();
let link = ['/login'];
this.router.navigate(link);
}
return Observable.throw(error);
}
}
, 나는 다음과 같은 오류가 발생합니다. 아래처럼 제공자 내부에 AuthService를 추가했습니다.
providers: [
...,
AuthService
]
라우터가 비슷한 오류를 발생시킵니다.
나는 생각 컨텍스트 문제 만이 아니라 어딘가에서 큰 실수를 저지른 것입니다. 감사! –