当我尝试像这样进行http调用时:
return this.http.get(this.url).map(res => res.json());
一切都是预期我有正确的响应没有错误,但是当我尝试使用间隔进行http调用时(通过RxJS运算符间隔)我有一个错误。
我的代码看起来:
return Observable.interval(1000).map(() => {
return this.http.get(this.url).map(res => res.json());
});
错误:
ZoneAwareError {__zone_symbol__error:错误:(SystemJS)XHR错误(404 Not Found)loading http://localhost:3000/node_modules/rxjs 错误:...,__ zone_symbol__stack:"(SystemJS)XHR错误(404未找到)加载http:... alhost:3000 / app / home / components / home.component.js",originalErr:ZoneAwareError}
答案 0 :(得分:2)
您必须使用.flatMap()
和IntervalObservable
从其他Observable
获取数据:
return IntervalObservable
.create(1000)
.flatMap(() => {
return this.http.get(this.url).map(res => res.json());
});