Tôi có đoạn code sau trong dịch vụ của tôiNhận thông báo lỗi từ góc 2 http
myService.ts
makeHttpGetRequest(url){
return Observable.interval(config.SUPERVISOR_REFRESH_INTERVAL * 1000)
.switchMap(() => this.http.get(url))
.map(res => res.json())
.timeout(config.REQUEST_TIMEOUT * 1000, new Error('Time out occurred'))
}
Trong tập tin thành phần của tôi,
myComponent.ts
ngOnInit(){
this._myService.makeHttpGetRequest(myurl)
.subscribe(
data => {
this.supervisorServers = data;
}
},
error => {
this.error = true;
console.log(error); //gives an object at this point
this.showError(error);
}
);
}
Tôi muốn in thông báo lỗi trong trường hợp ví dụ: Url Invailid. Khi tôi in lỗi, tôi nhận được một đối tượng (có thể là đối tượng response) như sau:
Object { _body: error, status: 200, statusText: "Ok", headers: Object, type: 3, url: null }
Nếu tôi mở này, tôi không thể tìm thấy các thông báo lỗi. Có cách nào tốt hơn để nhận thông báo lỗi trước không?
Cảm ơn bạn đã trả lời. Tôi có thể truy cập nó. Nhưng ví dụ: khi tôi có một url không hợp lệ, tôi không thể nhìn thấy thông báo lỗi trong nội dung phản hồi. Có thể nhận được thông báo lỗi hiển thị trên giao diện người dùng không? – user3288346
Bạn được chào đón! Trong thực tế, bạn không thể có thông báo chính xác vì nó không thể truy cập trong đối tượng XHR. Điều đó nói rằng, bạn có thể dựa vào trường 'status' của đối tượng này ... Tôi đã cập nhật câu trả lời của mình. –