加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Angular.io拦截器与服务工作者

发布时间:2020-12-17 17:29:45 所属栏目:安全 来源:网络整理
导读:我想更好地理解实现离线友好的webapps的选项,我在这里阅读这篇文章: https://angular.io/guide/http也讨论了角度的拦截器. 现在我有点困惑: 一方面,我们有服务工作者(尚未完全支持浏览器),这将有助于实现脱机的第一/友好的应用程序,另一方面我们有这个强大
我想更好地理解实现离线友好的webapps的选项,我在这里阅读这篇文章: https://angular.io/guide/http也讨论了角度的拦截器.

现在我有点困惑:

一方面,我们有服务工作者(尚未完全支持浏览器),这将有助于实现脱机的第一/友好的应用程序,另一方面我们有这个强大的工具 – 拦截器 – 可以做很多事情来帮助应用程序更好地处理连接环境很差或没有.

那么这两个人之间有什么区别吗?什么时候使用,何时使用另一个?

解决方法

HttpClient拦截器和服务工作者是不同的层.

HttpClient拦截器仅处理在特定Angular应用程序中使用HttpClient提供程序执行的请求.

服务工作者处理在浏览器窗口中执行的所有请求,包括页面本身,资产和AJAX(XHR和Fetch)请求.

他们唯一常见的用途是对远程API的HttpClient请求.

由于API请求可以在Angular应用程序的不同位置处理,因此由开发人员决定哪一个是合适的.由于请求失败而导致的回退可能发生在服务工作者,HttpClient拦截器或使用HttpClient的服务中.

考虑到可以通过多种方式解决问题,并且浏览器支持很重要,服务工作者将不会是首选.如果单独使用HttpClient无法解决问题或解决方案不切实际,那么这对服务工作者来说就是一项工作.例如,当二进制文件更合适时,使用AJAX传输base64图像.

服务工作者不阻止主线程这一事实也是一个主要问题.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读