Javascript 可观察:在http get之后未调用onCompletion,但出现错误

Javascript 可观察:在http get之后未调用onCompletion,但出现错误,javascript,http,rxjs,observable,Javascript,Http,Rxjs,Observable,我不明白为什么在发生错误时不调用onCompletion(例如http 401/404)。这不应该是预期的行为吗 this.http.get('http://localhost/xxx') .map((res) => res.json()) .subscribe( (res) => { console.log('onSuccess'); console.log(res); }, (err) => { conso

我不明白为什么在发生错误时不调用onCompletion(例如http 401/404)。这不应该是预期的行为吗

this.http.get('http://localhost/xxx')
  .map((res) => res.json())
  .subscribe(
    (res) => {
      console.log('onSuccess');
      console.log(res);
    },
    (err) => {
      console.log('onError');
      console.log(err);
    },
    () => {
      console.log('onCompletion');
    });
在可观察的执行中,可能会发送零到无限的下一个通知。如果传递了错误或完整的通知,则之后不能传递任何其他内容

在可观察的执行中,可能会发送零到无限的下一个通知。如果传递了错误或完整的通知,则之后不能传递任何其他内容


有三种类型的事件:

  • 下一个
  • 错误
  • 完整的
它们根据这个(RegExp)模式出现:
n*(e|c)


正如Julia指出的,文档中也说明了这一点。

有3种类型的事件:

  • 下一个
  • 错误
  • 完整的
它们根据这个(RegExp)模式出现:
n*(e|c)

正如Julia指出的,文档中也说明了这一点