有人可以向我解释两件事:
答案 0 :(得分:7)
在Angular中,从Http服务发出的http请求很冷。
冷,在这种情况下,意味着在有人订阅从Http.get,Http.post等返回的observable之前不会发出http请求。此外,对http observable的每个订阅都会导致不同的http请求被解雇。这是因为,作为一个冷可观察对象,http observable负责在订阅时创建它的生成器(即Ajax请求),每个订阅将创建一个单独的值生成器(即单独的Ajax请求)。
Thoughtram has a detailed article on hot vs cold observables.
答案 1 :(得分:5)
它很冷,因为任何请求只在您订阅它时才开始产生价值。没有运行
http.get().subscribe((response) => ...)
不会向服务器发送任何请求。仅http.get()
只是一个对象。