У меня есть прецедент:
Как отразить этот факт, что видео теперь доступно на угловой стороне?
Я делаю что-то похожее на следующее, и он работает нормально, но я не уверен, правильно ли обрабатывается ошибка? Должен ли я делать что-то еще?
startLp(): Observable<any> {
return this.http
.get("/getvideostatus?video-id=blah", { headers: this.headers })
.map(res => {
return res.json();
})
.catch((error: any) => Observable.throw(error.json().error || 'Server error'));
}
Это всего лишь обычный HTTP-запрос, единственная разница в том, что сервер не сразу возвращает ответ.
Будет ли это действительным протоколом http long?
Это то, что я закончил:
public startLp(): Observable<any> {
let that = this;
let doLp = function(): Observable<any> {
return that.http
.get("/getvideostatus?video-id=blah", { headers: that.headers })
.map(res => {
return res.json().data
})
.catch((error: any) => {
return doLp();
});
};
return doLp();
}