[英]Angular2 http request in an interval
我试图每隔3秒发出一次请求并打印出响应,但直到现在都没有运气:(。我对Observables
很新,所以我做错了什么?
checkConnection() {
const URL = "https://www.google.at/";
Observable.interval(3000)
.flatMap(() => this.http.get(URL).map(res => res.json()).catch((error:any) => Observable.throw(error.json().error || 'Server error'))
.subscribe(data => {
console.log(data)
})
)
}
您需要subscribe
来自flatMap
响应的Observable
,如下所示:
Observable.interval(3000)
.flatMap(() => this.http.get(URL)
.map( res => res.json() )
.catch( (error:any) => Observable.throw(error.json().error || 'Server error') ) )
.subscribe(data => {
console.log(data)
})
并且https://www.google.at/
需要启用跨域请求才能获取数据。
您可以使用的示例plunker: http ://plnkr.co/edit/Nz0LZJDSPcUZlYOHU3p7?p = preview
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.