2017-04-17 1 views
1

각도 2 설명서 및 특별히 https://angular.io/docs/ts/latest/guide/server-communication.html의 코드 예제 (plunkr here)가 있습니다. 서버 링크가 끊어져서 (예 : 호출하기 위해) 오류 시나리오를 시뮬레이션하려고했습니다. net :: ERR_CONNECTION_REFUSED 유형의 오류 표시

GET http://localhost:3002/heroes net::ERR_CONNECTION_REFUSED 
scheduleTask @ zone.js:1990 
ZoneDelegate.scheduleTask @ zone.js:384 
onScheduleTask @ zone.js:274 

그러나 템플릿 HTML {{errorMessage}}에 나는 0 - {"isTrusted":true}을 얻고있다. net::ERR_CONNECTION_REFUSED 오류 메시지를 어떻게 수집합니까?

그렇지 않으면 오류가 발생하지 않도록 TypeError: Observable_1.Observable.throw is not a function을 피하기 위해 서비스에 import 'rxjs/add/observable/throw';을 추가해야합니다.

답변

0

시도해보십시오. here.

이미 설명한대로 import 'rxjs/add/observable/throw';이 누락 된 것 외에도 제공 한 예에서 json에 오류 응답 객체를 구문 분석하는 데 문제가있었습니다. 응답이 성공한 경우 res 응답 개체는 _body 속성 (예 : Object)을 포함하므로 .json()으로 변환 할 수 있습니다. 그러나 응답이 실패한 경우 error 응답 개체에는 .json() 메서드를 사용할 수없는 HTML이 포함 된 _body 속성이 들어 있습니다. error 응답 개체를 검사하여 콘솔에서이 모든 것을 확인할 수 있습니다.

이미 상태 코드 및 상태 텍스트 정보가있는 경우 .json()과 함께 error 응답 개체를 실제로 변환 할 필요가 없습니다. 내가 게시 한 Plunker 링크에서 확인할 수 있습니다.

관련 문제