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

问题描述 投票:4回答:1

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

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

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

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

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

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

angular httpclient
1个回答
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

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

中间件模式的一些好处:

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

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

© www.soinside.com 2019 - 2024. All rights reserved.