【问题标题】:Why does Chrome show duplicate HTTP requests when using the angular service-worker?为什么 Chrome 在使用 Angular Service-Worker 时会显示重复的 HTTP 请求?
【发布时间】:2020-08-20 04:52:33
【问题描述】:

当 chrome 在启用 angular service-worker 的情况下发出 HTTP 请求时,我在 Chrome 网络选项卡中看到类似这样的内容:

  • 为什么 chrome 网络选项卡会为每个发出的请求显示两个请求,一个 fetch,一个 xhr? (我在服务器上只看到一个请求)
  • 为什么提取请求没有响应数据?
  • 每个请求的持续时间和大小是否准确?

我正在关注official service-worker guide,我正在使用最新的 Angular 9。

在 Firefox 中,我没有看到重复的请求:

Chrome 版本:81.0.4044.129

火狐版本:76.0

【问题讨论】:

    标签: angular google-chrome service-worker angular-service-worker


    【解决方案1】:

    Service Worker 正在处理这个请求,就像代理一样。原始请求被驳回。发生这种情况是因为 SW 正在缓存响应(如图像、样式或路由)以获得更好的性能 - 而不是一直从服务器下载资源(但这可以在 Service worker configuration 中更改),SW 正在从浏览器缓存中提供它们。即使用户处于离线状态,它也能正常工作——这就是路由工作的原因,因为 service worker 正在从缓存中提供 html,并且可以访问该站点

    【讨论】:

      猜你喜欢
      • 2021-03-12
      • 2018-01-19
      • 1970-01-01
      • 1970-01-01
      • 2019-10-17
      • 2020-07-07
      • 1970-01-01
      • 1970-01-01
      • 2018-11-04
      相关资源
      最近更新 更多