Angular 5 HttpClient比以前的Http有什么优势?

Ser*_*nko 4 httpclient angular

我阅读了官方升级指南,它说的是"因为HttpClient获得了广泛的采用,我们决定......" 但是这个HttpClient带来了什么真正的好处?

我正在考虑尝试一下,但是因为我不知道升级后需要发生什么,所以我感到很困惑:

从'@ angular/http'导入{Http,Headers,RequestOptions,ResponseContentType};

我试图找到一个"在新客户端中匹配:从'@ angular/common/http'导入{HttpClient,HttpParams,HttpHeaders}

但是不知道那些应该如何正确地"升级",因为指南没有说明它.

所以第二个问题 - 我们如何处理其他http事件?

pix*_*its 7

HttpClient接口与旧的Http接口几乎没有变化.最大的区别是HttpClientModule对中间件(即.HTTP拦截器)有更好的支持.

一些功能的好处:

•   Strongly typed response body access
•   JSON assumed by default (no more need to do .map(t=>t.json())
•   Better support for interceptors as middleware
•   Immutable request/response objects
•   Progress events for request upload/response download
Run Code Online (Sandbox Code Playgroud)

使用新的http客户端,它可以直接使用HTTP拦截器来实现中间件组件.

中间件模式的一些好处:

  1. HTTP请求的全局错误处理
  2. 全局重试机制(即重试3次)
  3. 用于长时间运行的全局HTTP微调器.

例如,客户端代码(使用HttpClient)不需要担心错误处理,重试或可视等待组件 - 所有这些都在一个地方处理.