Я использую наблюдаемые для Http-вызовов, которые работают нормально, но затем я изменил свои контроллеры и заметил, что мой код, по-видимому, не обрабатывает ошибки.Angular 2: http.get in Observable not handling error
Вот посмотрите на код из моей службы (SellingMenuService):
public getVarieties(): Observable<any> {
return this.http.get(this.varietyListUrl).map(response => {
return response.json();
}, (error: any) => {
console.log(error);
console.log('error finding variety list');
// TODO: implement error handling here.
});
}
А вот соответствующий код моего компонента:
constructor(public sellingMenuService: SellingMenuService) { }
getVarietyList(): void {
this.sellingMenuService.getVarieties().subscribe(res => {
console.log(res);
this.varieties = res;
});
}
А вот некоторые ошибки в моей консоли :
Если у меня возникла ошибка 500, не должны ли пострадать эти консольные журналы с моего сервиса выше? Почему бы и нет?
[Здесь рекомендуется официальный путь] (https://angular.io/docs/ts/latest/ guide/server-communication.html #! # error-handling) для обработки исключений по HTTP-запросам от _Angular.io_. Существует ссылка на [живой пример] (https://embed.plnkr.co/?show=preview) на Plunker в нижней части страницы (перейдите в '/ app/toh/hero.service.ts', чтобы см. код службы HTTP-клиента). –