文章内容

2020/5/25 18:29:48,作 者: 黄兵

Angular 的 Service Worker 简介

Angular  Service Worker 简介:

简单来说,Service Worker 就是一段运行在 Web 浏览器中,并为应用管理缓存的脚本。

Service Worker 的功能就像一个网络代理。它们会拦截所有由应用发出的 HTTP 请求,并选择如何给出响应。 比如,它们可以查询局部缓存,如果有缓存的响应数据,就用它做出响应。 这种代理行为不会局限于通过程序调用 API(比如 fetch)发起的请求,还包括 HTML 中对资源的引用,甚至对 index.html 的首次请求。 基于 Service Worker 的缓存是完全可编程的,并且不依赖于服务端指定的那些控制缓存策略的头。

不像应用中的其它脚本(如 Angular 的应用包),Service Worker 在用户关闭浏览器页标签时仍然会被保留。 下次浏览器加载本应用时,Service Worker 会首先加载,然后拦截加载本应用时的对每一项资源的请求。 如果这个 Service Worker 就是为此而设计的,它就能完全满足应用加载时的需求,而不需要依赖网络。

即使在快速可靠的网络中,往返延迟也可能在加载应用程序时产生显著的延迟。使用 Service Worker 来减少对网络的依赖可以显着改善用户体验。


文章地址:Angular 的 Service Worker 简介

分享到:

发表评论

评论列表