可观察对象是否发出获取请求?

Does an observable make a get request?

当我们在 angular2 中使用 observables 时,假设我们发出一个 returns observable 的 get 请求。

这个 observable 是自动发出 get 请求还是当我们调用它时 subscribe 发出 get 请求

示例:

这里调用的是服务器吗? this.http.get(requestUrl).map(this.validateResponse).map(this.parseJson);

或此处(订阅后)

this.http.get(requestUrl).map(this.validateResponse).map(this.parseJson).subscribe(result=> console.log(result));

默认情况下 Observable 是冷的(没有订阅 - 没有执行请求)。 使用 .share() 运算符使 Observable 变热。 此处描述:https://auth0.com/blog/making-use-of-rxjs-angular/

Observable 只是一个 type/wrapper 我们想要观察的数据(异步调用,事件,...)(获取数据,对事件做出反应,...) .

所以,如果您不 subscribechanges,就不会发生任何事情。

使用http.get时必须订阅才能获取数据。

您可以查看这些文章以对 Observable 有一个很好的概述:https://angular-2-training-book.rangle.io/handout/observables/using_observables.html